首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > C# >

求好手解惑

2012-07-08 
求高手解惑using Systemusing System.Collections.Genericusing System.ComponentModelusing System.Da

求高手解惑
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.IO;

namespace WindowsFormsApplication9
{
  public partial class Form1 : Form
  {
  public Form1()
  {
  InitializeComponent();
  }

  private void button1_Click(object sender, EventArgs e)
  {
  int j=0;
  string a = "12051220.003";
  StreamReader myReader = new StreamReader(@"D:\"+a, Encoding.GetEncoding("GB2312"));
  string myline = " ";
  myline = myReader.ReadLine();
   
  while ((myline = myReader.ReadLine()) != null)
  {
  j = j + 1;
  myline.Replace(" "," ");
  myline.Replace(" "," ");
  myline.Replace(" "," ");
  string[] sArray = myline.Split(' ');
  if (j==4)
  { 
   
  richTextBox1.AppendText(sArray[6] + "\r\n");
  myWriter.Close();
  return;  
   
  }  

  }

  myReader.Close();

  }
  }
   
}
有两个问题第一个就是ReadLine()只能从第二行开始读,第一行被隔过去了
第二个问题是我想用myline.Replace(" "," ");
  myline.Replace(" "," ");
  myline.Replace(" "," ");
这段代码来实现将几个空格换成一个空格的目第,但是实现不了
举例  
  1 1 1 1 1
我想把上边的一行变为下边这样的格式
  1 1 1 1 1

[解决办法]
myline = myReader.ReadLine();
while ((myline = myReader.ReadLine()) != null)

因为你ReadLine了两次
[解决办法]

C# code
while (myline.IndexOf("  ") >= 0){    myline = myline.Replace("  ", " ");} 

热点排行