【发布时间】:2017-01-04 15:45:35
【问题描述】:
我有一个包含文本和数字的文件,需要将其导入Tuple<string, int> 数组 (Tuple<string, int>[] vowels = new Tuple<string, int>[81])。该文件看起来像这样
a,2,e,6,i,3,o,8,u,2,y,5
我使用的当前方法最初使用
将其导入字符串数组string[] vowelsin = File.ReadAllText("path.txt").Split(',');
导入后,我将数据转换为元组使用
for (int x = 0; x < 81; x++)
vowels[x] = Tuple.Create(vowelin[x*2], int.Parse(vowelin[(x*2) + 1]));
虽然它有效,但阅读起来有点困难,并且在测试期间,大约需要 100 毫秒才能完成。是否有任何潜在的单行方法、更快的方法或更具可读性的方法可以实现相同的目标?
【问题讨论】:
-
使用 String.Split 会极大地浪费性能。通过逐字符迭代内容并采取相应措施,可以更快地编写它。