我希望用户能够选择以某种方式编写的文本文件(每行1个数字),然后将文件转换为数组。我有点零碎的工作,但我无法在同一时间完成所有的工作。任何帮助将不胜感激。
private void Load_Button_Click(object sender, EventArgs e)
{
int counter = 0;
string line;
List<int> list = new List<int>();
string fileName = "";
//OpenFileDialog ofd = new OpenFileDialog();
//ofd.Filter = "TXT File|*.txt";
//ofd.Title = "Open File";
// if (ofd.ShowDialog() == System.Windows.Forms.DialogResult.OK)
// {
File_Label.Text = "C:/Users/Neilan/Desktop/sample.txt";
//fileName = "@" + ofd.SafeFileName;
//MessageBox.Show(ofd.FileName);
System.IO.StreamReader file = new System.IO.StreamReader(@"C:\Users\Neilan\Desktop\sample.txt");
while ((line = file.ReadLine()) != null)
{
Unsorted_Box.Text += line + ", ";
//list.Add(int.Parse(fileName));
counter++;
}
dataArray = list.ToArray();
// }
}
答案 0 :(得分:2)
你可以这样做。
var numberarray = File.ReadAllLines("stringpath").Select(int.Parse).ToArray();
查看您的代码,我想您希望以逗号分隔格式向用户显示这些值。您可以使用以下代码段来实现此目的。
Unsorted_Box.Text = String.Join(",", numberarray.ToArray());
希望这有帮助!
答案 1 :(得分:1)
这个问题可以通过一行来解决
var resultArray = Array.ConvertAll(System.IO.File.ReadAllLines("filename.type"), str => int.Parse(str));
您可以输入File_Label.Text