Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/string/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
无效的表达式项';字符串';C#_C#_String - Fatal编程技术网

无效的表达式项';字符串';C#

无效的表达式项';字符串';C#,c#,string,C#,String,我有这段代码用于读取文本文件中的下一行,但它给了我一个错误Invalif表达式术语“string” 这是我的密码: private void listView1_MouseClick(object sender, MouseEventArgs e) { if (listView1.SelectedItems.Count > 0) { String text = listView1.Selected

我有这段代码用于读取文本文件中的下一行,但它给了我一个错误Invalif表达式术语“string”

这是我的密码:

             private void listView1_MouseClick(object sender, MouseEventArgs e)
    {

        if (listView1.SelectedItems.Count > 0)
        {

            String text = listView1.SelectedItems[0].Text;


            List<string> filecontents = File.ReadAllLines(filename).ToList < string();
            for (int i = 0; i < filecontents.Count; i++)
            {
                if (filecontents[i].Contains(text))
                {
                    string error = filecontents[i + 1];
                }
            }


        }
    }
private void listView1\u鼠标单击(对象发送者,鼠标事件目标)
{
如果(listView1.SelectedItems.Count>0)
{
String text=listView1。SelectedItems[0]。文本;
List filecontents=File.ReadAllLines(filename.ToList
此行生成错误:

List<string> filecontents = File.ReadAllLines(filename).ToList < string();
List filecontents=File.ReadAllLines(filename.ToList
我猜你想写这个:

List<string> filecontents = File.ReadAllLines(filename).ToList<string>();
List filecontents=File.ReadAllLines(filename.ToList();
这是另一种写作方式:

List<string> filecontents = new List<string>( File.ReadAllLines(filename) );
for (int i = 0; i < filecontents.Count; i++)
{
    if (filecontents[i].Contains(text))
    {
        string error = filecontents[i + 1];
    }
}
List filecontents=新列表(File.ReadAllLines(filename));
for(int i=0;i
它是
ToList这是导致问题的原因。我不知道你的目标是什么语法,但它应该是
ToList()是的,错误告诉你问题出在哪里。它甚至告诉/指示错误的位置。只需将眼睛移向错误点所在的位置…;-)好的,非常感谢!感谢它!但是File.ReadAllLines返回字符串[],您不能在其中使用ToList方法。是的,它可以
ToList
在数组实现的
IEnumerable
上操作。正确的编写方法是
List filecontents=File.ReadAllLines(filename.ToList()。没有必要指定类型。你说得对。我编辑并更正了它。您必须包含System.Linq,然后您可以使用ToList方法来字符串[]。尽管您不需要类型参数,因为它无论如何都会被推断出来。虽然使用
ToList()
是有效的,但它是非传统的。