[英]How can I read a text file of dates and convert them into an array that I can sort in C#?
[英]How do I change a String Array (being read from a text file) to a Int Array? So that I can search and sort the data
我正在阅读几个文本文件,我需要在其中搜索和排序数据,搜索和排序不是问题,因为我已经用一些以前的代码完成了这项工作。 但是,我似乎无法做的是让我的程序将文件中的字符串数组更改为 int 数组。 任何帮助将不胜感激。
我已经尝试过 tryparse、bool、decimal、int、int32 等。我对 c# 比较陌生,所以请不要将这些作为确定它们不会工作的方式传递出去,因为它们很可能会......只是我还没想好怎么...
//Reads Files
string Low256 = "Low_256.txt";
string[] LowString256 = File.ReadAllLines(Low256);
string High256 = "High_256.txt";
string[] HighString256 = File.ReadAllLines(High256);
string Mean256 = "Mean_256.txt";
string[] MeanString256 = File.ReadAllLines(Mean256);
//Removes Spaces from the txt file
int i = 0;
int[] LowArray256 = new int[256];
foreach (string line in LowString256)
if (line != " ")
{
LowString256[256] = line;
i++;
}
int[] HighArray256 = new int[256];
foreach (string line in LowString256)
if (line != " ")
{
LowString256[256] = line;
i++;
}
int[] MeanArray256 = new int[256];
foreach (string line in LowString256)
if (line != " ")
{
LowString256[256] = line;
i++;
}
//Converts Strings Arrays To Int
LowArray256 = Array.ConvertAll(LowString256, Int32.Parse);
HighArray256 = Array.ConvertAll(HighString256, Int32.Parse);
MeanArray256 = Array.ConvertAll(MeanString256, Int32.Parse);
收到的错误是 System.FormatException: '输入字符串的格式不正确。'
预期的结果是能够使用 int 数组来搜索和排序数据。
编辑
这些文件由数据组成,例如...
16.8614
15.3207
18.3596
17.1516
15.5238
18.4468
19.2638
17.0751
...在这种格式中,每个数字后面都有一个空格和一个换行符。 无法编辑文档本身。
如果文件每行包含一个数字,这应该有效:
//Read files
string Low256 = "Low_256.txt";
string[] LowString256 = File.ReadAllLines(Low256);
string High256 = "High_256.txt";
string[] HighString256 = File.ReadAllLines(High256);
string Mean256 = "Mean_256.txt";
string[] MeanString256 = File.ReadAllLines(Mean256);
//Convert string[] to int[]
int[] Low256Int = new int[LowString256.Length];
for (int i = 0; i < LowString256.Length; i++)
{
int.TryParse(LowString256[i], out int parsed);
Low256Int[i] = parsed;
}
int[] Mean256Int = new int[MeanString256.Length];
for (int i = 0; i < MeanString256.Length; i++)
{
int.TryParse(MeanString256[i], out int parsed);
Mean256Int[i] = parsed;
}
int[] High256Int = new int[HighString256.Length];
for (int i = 0; i < HighString256.Length; i++)
{
int.TryParse(HighString256[i], out int parsed);
High256Int[i] = parsed;
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.