C# 如何将字符串数组列表写入txt文件

C# 如何将字符串数组列表写入txt文件,c#,arrays,console-application,C#,Arrays,Console Application,是否可以将字符串数组列表写入txt文件 这是我的代码,我不知道如何完成最后一步。我制作了一个列表,通过该列表,我可以根据用户输入的数字foreach,它可以正确返回所有值,但我似乎无法将所有数据保存到txt文件中 static void Main(string[] args) { Console.WriteLine("Unesi broj:"); int userNumber = Convert.ToInt32(Console.ReadLine());

是否可以将字符串数组列表写入txt文件

这是我的代码,我不知道如何完成最后一步。我制作了一个列表,通过该列表,我可以根据用户输入的数字
foreach
,它可以正确返回所有值,但我似乎无法将所有数据保存到txt文件中

 static void Main(string[] args)
    {
        Console.WriteLine("Unesi broj:");

        int userNumber = Convert.ToInt32(Console.ReadLine());

        var numberLIst = Enumerable.Range(1,userNumber).ToList();

        string path = @"C:\Users\mcrnic\Desktop\scriptFolder\input.txt";

        List<string[]> listaStringova = new List<string[]>();

        int n = 0;

        foreach (var data in numberLIst)
        {             

            n++;

            #region Varijable
            var textBoxNumberRangeFirst = "tbxNumberRangeFirstInput" + data;
            var textBoxNumberRangeSecond = "tbxNumberRangeSecondInput" + data;
            var textBoxNumberRangeThird = "tbxNumberRangeThirdInput" + data;
            var textBoxHomeNumbersFirst = "tbxRangeOfHomeNumbersFirstInput" + data;
            var textBoxHomeNumbersSecond = "tbxRangeOfHomeNumbersSecondInput" + data;
            var textBoxVPNFirst = "tbxRangeOfShortVPNNumbersFirstInput" + data;
            var textBoxVPNSecond = "tbxRangeOfShortVPNNumbersSecondInput" + data;
            var checkBoxNumberTransfer = "cbxNumberTransfer" + data;
            var checkBoxSecretNumber = "cbxSecretNumber" + data;
            var checkBoxSearchByNumber = "cbxSearchByNumber" + data;
            var checkBoxZ1 = "cbxZ1_" + data;
            var checkBoxZ2 = "cbxZ2_" + data;
            var checkBoxZ3 = "cbxZ3_" + data;
            var checkBoxZ4 = "cbxZ4_" + data;
            var checkBoxZ5 = "cbxZ5_" + data;
            var checkBoxZ6 = "cbxZ6_" + data;
            var checkBoxZ7 = "cbxZ7_" + data;
            #endregion

            string[] htmlLinije = {"<%-- Row" + n + " --%>",
                                "<div class=&row rowFullWidth form-inline pb10& hidden>",
                                "<div class=&col-sm-4&>",
                                "<asp:TextBox runat=&server& ID=&" + textBoxNumberRangeFirst + "& class=&form-control textbox-width-25 ml10& ReadOnly=&true& />",
                                "<span class=&pr5 pl5&>/</span><asp:TextBox runat=&server& ID=&" + textBoxNumberRangeSecond +"& class=&form-control textbox-width-25& ReadOnly=&true&/>",
                                "<span class=&pr5 pl5&>-</span><asp:TextBox runat=&server& ID=&" + textBoxHomeNumbersSecond + "& class=&form-control textbox-width-25& ReadOnly=&true&/>",
                                "</div>",
                                "<div class=&col-sm-2&>",
                                "<asp:CheckBox runat=&server& ID=&" + checkBoxNumberTransfer + "& AutoPostBack=&false& CssClass=&checkbox pl20 pr15 pt5& Enabled=&false&/>",
                                "<asp:CheckBox runat=&server& ID=&" + checkBoxSecretNumber + "& AutoPostBack=&false& CssClass=&checkbox pl20 pr15 pt5& Enabled=&false&/>",
                                "<asp:CheckBox runat=&server& ID=&" + checkBoxSearchByNumber + "& AutoPostBack=&false& CssClass=&checkbox pl20 pr15 pt5& Enabled=&false& />",
                                "</div>",
                                "<div class=&col-sm-2&>",
                                "<asp:TextBox runat=&server& ID=&" + textBoxHomeNumbersFirst + "& class=&form-control textbox-width-40& ReadOnly=&true& /><span class=&pr10 pl10&>-</span>",
                                "<asp:TextBox runat=&server& ID=&" + textBoxHomeNumbersSecond + "& class=&form-control textbox-width-40& ReadOnly=&true& />",
                                "</div>",
                                "<div class=&col-sm-2&>",
                                "<asp:TextBox runat=&server& ID=&" + textBoxVPNFirst + "& class=&form-control textbox-width-40& ReadOnly=&true& /><span class=&pr10 pl10&>-</span>",
                                "<asp:TextBox runat=&server& ID=&" + textBoxVPNSecond + "& class=&form-control textbox-width-40& ReadOnly=&true& />",
                                "</div>",
                                "<div class=&col-sm-2&>",
                                "<div class=&pt5&>",
                                "<asp:CheckBox runat=&server& ID=&" + checkBoxZ1 + "& AutoPostBack=&false& CssClass=&checkbox pr5& Enabled=&false& />",
                                "<asp:CheckBox runat=&server& ID=&" + checkBoxZ2 + "& AutoPostBack=&false& CssClass=&checkbox pr5& Enabled=&false& />",
                                "<asp:CheckBox runat=&server& ID=&" + checkBoxZ3 + "& AutoPostBack=&false& CssClass=&checkbox pr5& Enabled=&false& />",
                                "<asp:CheckBox runat=&server& ID=&" + checkBoxZ4 + "& AutoPostBack=&false& CssClass=&checkbox pr5& Enabled=&false& />",
                                "<asp:CheckBox runat=&server& ID=&" + checkBoxZ5 + "& AutoPostBack=&false& CssClass=&checkbox pr5& Enabled=&false& />",
                                "<asp:CheckBox runat=&server& ID=&" + checkBoxZ6 + "& AutoPostBack=&false& CssClass=&checkbox pr5& Enabled=&false& />",
                                "<asp:CheckBox runat=&server& ID=&" + checkBoxZ7 + "& AutoPostBack=&false& CssClass=&checkbox pr5& Enabled=&false& />",
                                "</div>",
                                "</div>",
                                "</div>",
                                ""
            };

            listaStringova.Add(htmlLinije);                
        }


        System.IO.File.WriteAllLines(path, listaStringova);

    }
static void Main(字符串[]args)
{
Console.WriteLine(“Unesi broj:”);
int userNumber=Convert.ToInt32(Console.ReadLine());
var numberLIst=Enumerable.Range(1,userNumber.ToList();
字符串路径=@“C:\Users\mcrnic\Desktop\scriptFolder\input.txt”;
List listaStringova=新列表();
int n=0;
foreach(数值列表中的var数据)
{             
n++;
#雅布勒地区
var textBoxNumberRangeFirst=“tbxNumberRangeFirstInput”+数据;
var textboxnumberrangesond=“TBxnumberrangesondinput”+数据;
var textBoxNumberRangeThird=“tbxNumberRangeThirdInput”+数据;
var textBoxHomeNumbersFirst=“tbxRangeOfHomeNumbersFirstInput”+数据;
var textBoxHomeNumbersSecond=“tbxRangeOfHomeNumbersSecondInput”+数据;
var textBoxVPNFirst=“tbxRangeOfShortVPNNumbersFirstInput”+数据;
var textBoxVPNSecond=“tbxRangeOfShortVPNNumbersSecondInput”+数据;
var checkBoxNumberTransfer=“cbxNumberTransfer”+数据;
var checkBoxSecretNumber=“cbxSecretNumber”+数据;
var checkBoxSearchByNumber=“cbxSearchByNumber”+数据;
var checkBoxZ1=“cbxZ1_z1”+数据;
var checkBoxZ2=“cbxZ2”+数据;
var checkBoxZ3=“cbxZ3”+数据;
var checkBoxZ4=“cbxZ4”+数据;
var checkBoxZ5=“cbxZ5”+数据;
var checkBoxZ6=“cbxZ6”+数据;
var checkBoxZ7=“cbxZ7”+数据;
#端区
字符串[]HTMLINIJE={“”,
"",
"",
"",
"/",
"-",
"",
"",
"",
"",
"",
"",
"",
"-",
"",
"",
"",
"-",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
""
};
添加(htmlinije);
}
System.IO.File.writeAllines(路径,listaStringova);
}
当我尝试
写入所有行时,会出现此错误:

错误CS1503参数2:无法从System.Collections.Generic.List转换为字符串[]

需要字符串数组作为第二个参数。您正在发送一个字符串数组,因此需要首先展平此列表

这可以使用类似的方法来实现:


您正在尝试将字符串数组列表写入文件。您必须编写字符串列表(每行一个字符串):


List listStringova=new List()

您正在尝试为列表而不是字符串[]编写所有行。根据MSDN,WriteAllines的唯一重载是
IEnumerable
,而不是
IEnumerable
。此外,您应该正确使用
StringBuilder
类,然后执行
WriteAllText
。这将极大地帮助您。

更改此行:

List<string[]> listaStringova = new List<string[]>();
致:


这就是将数组中的所有项添加到列表中的方式。

您只需使用以下一行代码即可:

System.IO.File.WriteAllLines(path, listaStringova.SelectMany(i => i));

到底是什么问题?你有什么错误吗?很抱歉,我不得不这么说,但是看到像你这样的新来者的这些可怕的代码格式真是令人沮丧。请在正确格式化代码上下功夫。这将使我们更有可能帮助您更容易、更快地理解代码和您的问题。正如您所说,mate,我是一名新来者,因此我还不知道如何正确设置代码格式,如果您无法提供帮助,请不要发表不必要的评论。错误正是告诉您问题的原因。。在谷歌上搜索如何访问
列表
值,
列表
就是你需要做的一切。@MatijaCrnić你是SO会员,从8个月开始,我4个月前就加入了。关键在于它对你有多重要,你为此付出了多少努力。关于如何正确地格式化代码,有足够的信息。你只要想要就行了。很高兴我能帮上忙。考虑把这个标记为你的问题的答案,其他用户也会发现这一点。
List<string> listaStringova = new List<string>();
listaStringova.Add(htmlLinije);
listaStringova.AddRange(htmlLinije);
System.IO.File.WriteAllLines(path, listaStringova.SelectMany(i => i));