110,567
社区成员
发帖
与我相关
我的任务
分享
发站: 信阳 武昌分区( 746) 武汉局.武 河南.豫(41) 国铁正式营业线[ 0]
到站: 都拉营 贵阳分区(1478) 成都局.成 贵州.贵(52) 国铁正式营业线[ 0]
经由:
径路类型:整车
全程:1543, 计费:362, 基金:362, 杂费:0
分界站数据:
1 蒲圻(PQN 975) 362公里 大 出 武昌-> 长沙
2 百亩井(BOQ 1588) 774公里 小 出 长沙-> 怀化
3 大龙(RPW 1981) 1191公里 大 入 怀化-> 贵阳
经由分区数据:
1 武昌 ( 746) 362公里
2 长沙 (1268) 412公里
3 怀化 (1269) 417公里
4 贵阳 (1478) 352公里
像这样的数据如果有很多的话,我可以只取得发站后的站名,到站后的站名,再把分界站数据:后面的蒲圻,百亩井, 大龙排成一排吗?
string readpath = ".\\wel.txt";
string writepath ="e:\\dfz.txt";
String sb= "";
StreamReader sf = new StreamReader(readpath, System.Text.Encoding.Default);
StreamWriter sw =new StreamWriter(writepath);
string[] rs;
string dz,fz,line;
while((line=sf.ReadLine())!=null){
if(line.Substring(0,5).Equals("发站:")){
fz= line.Substring(5, 8);
}
if (line.Substring(0, 5).Equals("到站")) {
dz= line.Substring(5, 8);
}
while(line.Substring(0,10).Equals("分界站数据")){
if (line.Substring(0, 10).Equals("经由分区数据"))
{
break;
}
else {
//中间如何得到分界站数据还没想出来!
}
}
sb = fz + " " + dz + " ";//这里说我使用了没有赋值的变量,但是我得取到后才有值啊,
}
这种不行,因为不知道分界数据有多少行!有取得指定字符后的数字吗? string readpath = ".\\wel.txt";
string writepath ="e:\\dfz.txt";
StringBuilder sb = new StringBuilder();
String startfz = "发站: ", endfz = " ";
string startdz = "到站: ", enddz = " ";
StreamReader sf = new StreamReader(readpath, System.Text.Encoding.Default);
StreamWriter sw =new StreamWriter(writepath);
string[] rs;
string dz,fz,line;
while((line=sf.ReadLine())!=null){
int Indexoffza = line.IndexOf(startfz);
int Indexoffzb = line.IndexOf(endfz);
if (Indexoffza != -1)
{
Ru = line.Substring(Indexoffza + 3, Indexoffzb - Indexoffza - 1);
}
int Indexofdza = line.IndexOf(startdz);
int Indexofdzb = line.IndexOf(enddz);
if (Indexofdza != -1)
{
Ru1 = line.Substring(Indexoffza + 3, Indexoffzb - Indexoffza - 1);
}
sw.Write(Ru + " " + Ru1 + "\r\n");
}
写入文本 信 : 鹤
信 : 都
信 : 都
信 : 都
信 : 都
信 : 都
信 : 都
信 : 都
信 : 都
信 : 都
信 : 都
信 : 都
信 : 都
信 : 都
信 : 都
信 : 都
信 : 都
信 : 都
信 : 都
信 : 都
信 : 都
信 : 都
信 : 都
信 : 都
信 : 都
信 : 都
信 : 都
信 : 都
信 : 都
信 : 都
信 : 都
信 : 都
信 : 都
信 : 都
信 : 都
信 : 都
信 : 都
信 : 都
信 : 都
信 : 都
信 : 都
信 : 都
信 : 都
信 : 都
信 : 都
信 : 都
信 : 都
信 : 都
信 : 都
信 : 都
信 : 都
信 : 都
信 : 都
这个结果吐血,看样子搞不成气了
string stra = "abcdefghijk";
string strtempa = "c";
string strtempb = "j";
//我们要求c---g之间的字符串,也就是:defghi //求得strtempa 和 strtempb 出现的位置:
int IndexofA = stra.IndexOf(strtempa);
int IndexofB = stra.IndexOf(strtempb);
string Ru = stra.Substring(IndexofA + 1, IndexofB - IndexofA -1);
参考====c#中怎样截取两特定字符之间的字符串
http://zhidao.baidu.com/link?url=5RPo610Rf9uq6_y9vDZV94ByN081TqumtiFraXJr3CVg4qcDHl0sNp2yIvvL2jZwyA2xnmqHsZjRN9CPtEf5wq