txt文件较大点,读入写出效率问题。

kuoma 2010-05-13 02:18:19
假设我今天有笔文字档,要取出从每一行的资料前几笔以,号分隔开的资料
怎样取速度会较快呢?

6545,5465,65456,654564,56456,测试
(有空行)
54564546,546,564,资料
564,资料
6545,5465,65456,654564,56456,测试
54564546,546,564,资料
6545,5465,56456,测试
54564546,546,564,资料
6545,5465,65456,654564,56456,测试
54564546,546,564,资料
6545,5465,65456,654564,56456,测试
564,资料
6545,5465,65456,654564,56456,测试
54564546,546,564,资料
6545,5465,65456,654564,56456,测试
54564546

假设要取"每行"前3笔记录输出结果如下
6545,5465,65456

54564546,546,564
564,资料
..........

假设要取"每行"前1笔记录输出结果如下
6545

54564546
564
..........

有无类似直接搜寻到第n个,号然后用类似取左边几个字元的方法,我想这样子比较快?
...全文
158 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
kuoma 2010-05-13
  • 打赏
  • 举报
回复
//目前程序大致的写法意思 只要前2笔资料
string tmp = "1,2,3,4,5,6,7";
string[] ary = tmp.Split(new char[] { ',' }, 3);
string getstr = ary[0] + "," + ary[1];//ary[0]="1" ary[1]="2" ary[3]="3,4,5,6,7"
//ary[3]="3,4,5,6,7" 这是无效的资料,但大量读个10000行的话这会有很多记忆体回收的问题
//且如果能以直接用找到第n个,(逗号)用substring取值应该会较快,回收较少。
kuoma 2010-05-13
  • 打赏
  • 举报
回复
题目假设一个档有10000行,我要取出10000行中的前3笔记录以,号分隔开的
我目前是用 一行一行读取 再用split(',',n)
取出前n个数组元素并成一行ary(0)+","+ary(1)+","++++ary(n)

因为每行split后最后一笔资料一定也有资料,但它不是我要的,所以理论上我用了10000行就产生了要回收无效数组元素10000笔,最终还是影响了性能大量的回收?因为档案多所以又会更慢

所以才会想说是否有较快的取法直接找出第n个,号直接用sbustring(0,到n个逗号位置)
mayonglong 2010-05-13
  • 打赏
  • 举报
回复
StreamReader.ReadLine()
split()
alldj 2010-05-13
  • 打赏
  • 举报
回复
readline.split(',')
deknight 2010-05-13
  • 打赏
  • 举报
回复
直接第N个好象不行吧,每次读一行,然后在这行里,分割
如果只取前5行,for int 1=1;i<6;i++ 循环一下
内容概要:本文围绕“面向高精度电流控制的PMSM多参数PSO辨识模型研究”,系统阐述了基于Simulink的永磁同步电机(PMSM)多参数辨识方法,重采用粒子群优化算法(PSO)实现对电机关键内部参数的高精度辨识。研究构建了完整的PMSM控制系统仿真模型,结合智能优化算法,解决了传统参数辨识中精度低、收敛慢的问题,有效提升了电流环控制的动态性能与稳态精度。该方法特别适用于对控制精度和响应速度要求较高的工业应用场景,如高性能伺服系统、电动汽车驱动系统等,具有较强的工程实用价值和科研参考意义。文中提供了完整的Simulink仿真模型与配套代码,确保了研究内容的可复现性和实践操作性。; 适合人群:具备电机控制、自动化或电气工程等相关专业背景,熟悉MATLAB/Simulink仿真环境,从事电机驱动系统研发、控制算法设计或相关领域科研工作的工程师及研究生,尤其适合工作1-5年、希望深入理解先进参数辨识技术的研发人员。; 使用场景及目标:①开展高精度PMSM控制系统的设计与参数辨识研究;②学习并掌握PSO等智能优化算法在电机系统参数辨识中的具体实现与调优技巧;③完成学术论文复现、科研项目验证、毕业设计或工程原型开发,提升对现代电机控制核心技术的理解与应用能力。; 阅读建议:建议读者结合提供的Simulink模型与源代码进行动手实践,按照文档逻辑逐步搭建与调试仿真系统,重关注PSO算法与电机模型的交互机制、目标函数设计及参数收敛过程,通过对比不同工况下的辨识结果,深入理解算法性能与控制精度之间的内在联系。

111,129

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Creator Browser
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧