我有一个保存着十行数值的txt文件,每行是两个双精度的数据。当我用ReadLine把一行数据读出来后,请问如何把该行字符串的两个数据分别提取出来?如:
T.txt
330.00 0.123
350.00 0.234
360.00 0.346
...现在需要把 330.00,350.00,360.00 ...保存在一个数组,0.123,0.234,0.346 ...保存在另一个数组,请问要怎样才能做到?
以前用C++时,直接两个《《 就可以了,现在改用C#,不知如何处理,还请各位指点一下。
T.txt
330.00 0.123
350.00 0.234
360.00 0.346
...现在需要把 330.00,350.00,360.00 ...保存在一个数组,0.123,0.234,0.346 ...保存在另一个数组,请问要怎样才能做到?
以前用C++时,直接两个《《 就可以了,现在改用C#,不知如何处理,还请各位指点一下。
解决方案 »
- c#调用PageLayoutControl输出地图的问题
- 在一个字符串里面按照位置查找一个数字的正则表达式如何写?
- 求助 ~!!怎么做一个批量查询地址alexa值的页面?
- 怎样在SQL Server Management Studio里新增存储过程?
- ruby系统命令问题
- 高手们,如何用C#来写聊天程序?
- 急需帮助!怎样实现在TextBox中限制中文状态下的‘-’字符,谢谢大家了,很急啊!
- 字符判断问题
- 全身家当请问一个异步执行的问题
- 有时间+有兴趣的高手进来帮菜鸟解决个很伤脑筋的问题.........N个TextBox怎么实现实现拖拉式(+算法)的效果?
- winform从数据库导出成excel,页居页脚
- 求助:连接串的疑问
比如:
string tempStr;
double[] tempDou1 = new double[10];
double[] tempDou2 = new double[10];
tempStr = xxx.ReadLine();
这时,如果 tempStr的值是"330.00 0.123 "的话,我怎样才能把
330.00放进tempDou1[0],0.123 放进tempDou2[0]?
Match match = Regex.Match(tempStr, "^([\d\.]+)\s+(\d\.]+)$");if (match.Success)
{
double n1 = Convert.ToInt64(match.Groups[1].Value);
double n2 = Convert.ToInt64(match.Groups[2].Value);
}
foreach(string s in arr)
{
string[] arr2=s.Split(new string[]{" "},StringSplitOptions.RemoveEmptyEntries);
}
比如说第一次读取的是330.00 0.123 ,然后用Split(' ')就可以得到330.00和0.123,然后把330.00和0.123添加到list里,这里时候list里面有两个元素了,一个是330.00(在list中的索引是奇数),另一个是0.123(在list中的索引是偶数),接下来继续ReadLine();
到时候你取出list中的索引为0 2 4 就会得到330.00,350.00,360.00 list中的索引为1 2 5 就会得到0.123,0.234,0.346 保存在另一个数组
这时s[0]就是330.00
s[1]就是0.123
将这两个数放入
tempDou1[0]=s[0];tempDou2[0=s[1]
即可!!
在此提醒一下像我这样的新手,如果"330.00 0.123"中间的空格数是不定的话,很可能分离出来的包含有空字符串,这时可能要用s[s.length-1]才能得到后面的数据。
结贴了