从 MATLAB 获取数据的问题
我之前请求帮助从生成的文本文件中读取数据一个 C 程序(一个 Exe)。
使用 @second 的解决方案,我解决了问题,但是昨天我发现输出文件比我预期的更复杂。
文件输出为:
V|0|0|0|t|0|1|1|4|11|T4|H13
I previously asked for help in reading data from a text file generated by a C program (an Exe).
Using @second's solution, I solved the problem but yesterday I discovered that the output file is more complex than I had expected.
The file output is:
V|0|0|0|t|0|1|1|4|11|T4|H13
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(16)
||
P|40|0.01|10|1|1|0|40|1|1|1||1|*||0|0|0
*|A1|A1|A7|A16|F|F|F|F|F|F
||
P|40|0.01|10|1|1|0|40|1|1|1||1|*||0|0|0
*|A1|A1|A7|A16|F|F|F|F|F|F
|||
*|codserv|area|codice|nome|tnom|tmin|tmax|pc|qc|susc|||||||
*|||||kV|kV|kV|MW|MVAR|S
|||
*|codserv|area|codice|nome|tnom|tmin|tmax|pc|qc|susc|||||||
*|||||kV|kV|kV|MW|MVAR|S
||
N|I|1|N01|N01|132|125.4|138.6|0|0||||||||
N|I|1|N02|N02|20|19|21|0|0
||
N|I|1|N01|N01|132|125.4|138.6|0|0||||||||
N|I|1|N02|N02|20|19|21|0|0
|||
N|I|1|N03|N03|20|19|21|1.013532234|0.49087611||||||||
N|I|1|N04|N04|20|19|21|0.390791617|0.189269056||||||||
N|I|1|N05|N05|20|19|21|0.180634542|0.121387171||||||||
N|I|1|N06|N06|20|19|21|0.709472564|0.343613323||||||||
N|I|1|N07|N07|20|19|21|0.103495727|0.069549543||||||||
N|I|1|N08|N08|20|19|21|0.351712456|0.170342158||||||||
N|I|1|N09|N09|20|19|21|0.097697904|0.06565339||||||||
N|I|1|N10|N10|20|19|21|0.162165157|0.078540184||||||||
N|I|1|N11|N11|20|19|21|0|0||||||||
*|A1|A8|A7|A7|F|F|F|F||F||F
*|plev|area|codice|estr1|estr2|lung|imax|rsd|xsd|bsd1|bsd2|||
*|||||km|A|Ohm|Ohm||S||S
L|I|D10203|N02|N03|1.884|360|0.41071|0.207886957|3.19E-08|3.19E-08
|||
N|I|1|N03|N03|20|19|21|1.013532234|0.49087611||||||||
N|I|1|N04|N04|20|19|21|0.390791617|0.189269056||||||||
N|I|1|N05|N05|20|19|21|0.180634542|0.121387171||||||||
N|I|1|N06|N06|20|19|21|0.709472564|0.343613323||||||||
N|I|1|N07|N07|20|19|21|0.103495727|0.069549543||||||||
N|I|1|N08|N08|20|19|21|0.351712456|0.170342158||||||||
N|I|1|N09|N09|20|19|21|0.097697904|0.06565339||||||||
N|I|1|N10|N10|20|19|21|0.162165157|0.078540184||||||||
N|I|1|N11|N11|20|19|21|0|0||||||||
*|A1|A8|A7|A7|F|F|F|F||F||F
*|plev|area|codice|estr1|estr2|lung|imax|rsd|xsd|bsd1|bsd2|||
*|||||km|A|Ohm|Ohm||S||S
L|I|D10203|N02|N03|1.884|360|0.41071|0.207886957|3.19E-08|3.19E-08
|||
L|I|D10304|N03|N04|1.62|360|0.35316|0.1787563|3.19E-08|3.19E-08
|||
L|I|D10304|N03|N04|1.62|360|0.35316|0.1787563|3.19E-08|3.19E-08
|||
L|I|D10405|N04|N05|0.532|360|0.11598|0.058702686|3.19E-08|3.19E-08
|||
L|I|D10405|N04|N05|0.532|360|0.11598|0.058702686|3.19E-08|3.19E-08
|||
L|I|D10506|N05|N06|1.284|360|0.27991|0.14168092|3.19E-08|3.19E-08
|||
L|I|D10506|N05|N06|1.284|360|0.27991|0.14168092|3.19E-08|3.19E-08
|||
L|I|D10607|N06|N07|1.618|280|0.53879|0.194766124|3.00E-08|3.00E-08
|||
L|I|D10607|N06|N07|1.618|280|0.53879|0.194766124|3.00E-08|3.00E-08
|||
L|I|D10708|N07|N08|0.532|280|0.17716|0.064039294|3.00E-08|3.00E-08
|||
L|I|D10708|N07|N08|0.532|280|0.17716|0.064039294|3.00E-08|3.00E-08
|||
L|I|D10809|N08|N09|2|360|0.436|0.220686791|3.19E-08|3.19E-08
|||
L|I|D10809|N08|N09|2|360|0.436|0.220686791|3.19E-08|3.19E-08
|||
L|I|D10910|N09|N10|2.4|360|0.5232|0.264824149|3.19E-08|3.19E-08
|||
L|I|D10910|N09|N10|2.4|360|0.5232|0.264824149|3.19E-08|3.19E-08
||
*|A1|A8|A7|A7|F|F|A1|F|F|F|F|F|F||F||F
||
*|A1|A8|A7|A7|F|F|A1|F|F|F|F|F|F||F||F
|||||
*|codserv|codice|estr1|estr2|vn1|vn2|nod1|varp|varm|np|Pb|rsd|xsd||bsd1||bsd2
|||||
*|codserv|codice|estr1|estr2|vn1|vn2|nod1|varp|varm|np|Pb|rsd|xsd||bsd1||bsd2
||
*|||||kV|kV||%|%||MVA|%|%||%||%|||||
%%%%%------%%%%%------%%%% **(read up to here)**
other unnecessary data
该算法应该:
跳过第五行
对于第四行
*|codserv|area|codice|nome|tnom|tmin|tmax|pc| qc|susc|||||||
,将每个字符串保存在空向量中codeserv=[] area=[] codice=[] nome=[] tnom=[] tmin=[] tmax =[] pc=[] qc=[] susc=[]
在第四个之后的行中用数据和字符串填充向量
对以字母
L
开头的数据执行相同的操作。读取此行codice|estr1|estr2|lung|imax|rsd|xsd||bsd1||bsd2
并用以L
开头的行中的值填充向量 p>我尝试过适应上一个问题的代码,但考虑到以
N
和L
开头的行不知道我需要知道如何读取第一个字符串和数一下N
和L
的数量。我希望这是可以理解的。我最大的问题是计算文本中的
N
和L
。||
*|||||kV|kV||%|%||MVA|%|%||%||%|||||
%%%%%------%%%%%------%%%% **(read up to here)**
other unnecessary data
The algorithm should:
skip fifth row
For the fourth row
*|codserv|area|codice|nome|tnom|tmin|tmax|pc|qc|susc|||||||
, save each string in a vector emptycodeserv=[] area=[] codice=[] nome=[] tnom=[] tmin=[] tmax=[] pc=[] qc=[] susc=[]
Fill vectors with data and strings in the rows following the fourth
Do the same with the data starting with the letter
L
. Read this linecodice|estr1|estr2|lung|imax|rsd|xsd||bsd1||bsd2
and fill the vectors with values in the lines beginning withL
I tried to adapt the code from the previous question, but given that the lines that start with
N
andL
do not know how many I need to know how to read the first string and count the numberN
andL
are.I hope it is understandable. My biggest problem is counting the
N
andL
in the text.