程序如下:大体思路,我顺序读取文件中的一行,然后统计一行中我需要的信息+ }5 _: B3 ?4 I% B0 `
int k = 1;//统计PQ节点信息用 8 M, O; b' |3 p: d8 x int h = 1;//统计PV节点信息用1 |6 O/ y+ F: s# o; ?% T8 ]/ }/ y7 L
int x = 1;//统计线路信息用3 f. I! H$ K/ S3 w0 W% u. X; I( s
/ y% C7 Y" T" E3 x% Z! s7 F PQNode[0].i = 0;//规定第i个PQ节点存入PQNode[i]中 . i3 r5 i9 n* U9 i PVNode[0].i = PQnum;# V$ C2 y0 C$ y5 v
9 D" l; c3 n! D% W0 O5 I
while ((line0 = sr.ReadLine()) != null); A7 e. S4 c3 q' F8 E
{, K. A2 f! k( h2 E
if (line0.Length == 0)8 g- B4 [/ G+ @3 p. l1 y
continue;//如果一行为空,则继续下一次迭代 0 K o8 l. p0 E- f9 q' g$ J$ N! q! V else0 k9 B5 j- ^4 M7 G! A8 E
aa = line0.Substring(0, 1);//aa存储一行中第一个字符; h- y g4 n4 g7 w" O( t4 i6 e6 l* H
if (aa == "." || aa == "(" || aa == "/") , ~6 K _' |1 J continue;//如果第一个字符为上面提到三种,则进行下一行迭代 2 T- p: ~" X7 O; l s else//否则取一行中的前两个字符 ; b: W, }3 k/ v7 d$ f line = Left(line0, 1, 2);//从第一个字符开始,取两个字符,送给line2 e' ?1 F. k4 o" O7 U
( B2 H* m. B. {9 {5 O0 b3 H5 t
if (Left(line0, 1, 2) == "BQ")$ \/ e; \9 {+ @: d
{ 9 |8 A% i+ g* t$ N5 ~2 W! b. j if (double.Parse(Left(line0, 58, 4)) > 100)//把指定位置的字符串转化为数值类型 1 d% Q! ?; g& X2 G {8 p0 H5 a# X/ j3 _2 |
PVNode[h].V = double.Parse(Left(line0, 58, 4)) / 1000;//PVNode[h]为结构数组中第h个元素,V表示结构中的某个变量7 V% i0 l: X! n* O' t# @$ ~
}. r' G4 { H6 ~% ~- Z# K
else" t, _7 J( x& K# o- O
{ + I& F& U1 q! Y6 ^ PVNode[h].V = double.Parse(Left(line0, 58, 4));4 {$ W" V" h8 _9 c
} z; o3 O, U. O, M3 n$ m- F2 O PVNode[h].i = PVNode[h - 1].i + 1;//对PVNode节点编号,PQnum+1。。。N-1(第N个为平衡节点)3 O& Y0 L: z3 F% \" G
PVNode[h].name = Left(line0, 7, 8);* s* M' {0 N2 \4 W% v" @) G: r( [3 M
h++; 0 e/ N! b1 X( S) [" Z! o$ O& N# W }6 Z& G" `0 o( N, J1 F8 R- h* J2 O: L
} 3 H2 |. b" `+ c0 I textBox1.Text += "\r\n支路信息:" + PVNode[1].i ; : d# t8 c8 ~" Q! A; o# z9 U5 m为什么当我在运行程序后(没有显示错误),出来结果为“支路信息:0”啊4 S8 ~5 Q, q% s
如果“+ PVNode[1].i”换成“+ PVNode[1].name”,则结果为“支路信息: ”,什么都没有!!!, }7 F5 Q0 v7 d$ ~9 j0 G3 J
请大侠指教!!!