C#读取txt文件的内容

C#读取txt文件的内容,内容就一行,格式是XXXX/XXXX,现在要分别读取“/”号前后的内容,写到两个文本框里面去,该怎么读取呢?

C#读写txt文件的两种方法:

1.添加命名空间
  System.IO;
  System.Text;

2.文件的读取
  (1).使用FileStream类进行文件的读取,并将它转换成char数组,然后输出。
byte[] byData = new byte[100];
char[] charData = new char[1000];
public void Read()
{
try
{
FileStream file = new FileStream("E:\\test.txt", FileMode.Open);
file.Seek(0, SeekOrigin.Begin);
file.Read(byData, 0, 100); //byData传进来的字节数组,用以接受FileStream对象中的数据,第2个参数是字节数组中开始写入数据的位置,它通常是0,表示从数组的开端文件中向数组写数据,最后一个参数规定从文件读多少字符.
Decoder d = Encoding.Default.GetDecoder();
d.GetChars(byData, 0, byData.Length, charData, 0);
Console.WriteLine(charData);
file.Close();
}
catch (IOException e)
{
Console.WriteLine(e.ToString());
}
}

  (2).使用StreamReader读取文件,然后一行一行的输出。
public void Read(string path)
{
StreamReader sr = new StreamReader(path,Encoding.Default);
String line;
while ((line = sr.ReadLine()) != null)
{
Console.WriteLine(line.ToString());
}
}

3.文件的写入
  (1).使用FileStream类创建文件,然后将数据写入到文件里。
public void Write()
{
FileStream fs = new FileStream("E:\\ak.txt", FileMode.Create);
//获得字节数组
byte[] data = System.Text.Encoding.Default.GetBytes("Hello World!");
//开始写入
fs.Write(data, 0, data.Length);
//清空缓冲区、关闭流
fs.Flush();
fs.Close();
}

  (2).使用FileStream类创建文件,使用StreamWriter类,将数据写入到文件。
public void Write(string path)
{
FileStream fs = new FileStream(path, FileMode.Create);
StreamWriter sw = new StreamWriter(fs);
//开始写入
sw.Write("Hello World!!!!");
//清空缓冲区
sw.Flush();
//关闭流
sw.Close();
fs.Close();
}
温馨提示:答案为网友推荐,仅供参考
第1个回答  2013-07-08
控制台写的,读取出字符串,用split 方法分割为2个字符串,分别保存到2个字符串中。StreamReader sr=new StreamReader(@"路径",Encoding.GetEncoding("GB2312"));string txt=sr.ReadToEnd();string [] split=txt.Split(new char[]{'/'});string s1=split[0];string s2=split[1];sr.close;本回答被网友采纳
第2个回答  2013-07-08
假设你的数据都是“123456,南京,珠江路”。
public partial class Form1 : Form
{
private Dictionary<string, string> contents = new Dictionary<string, string>();
public Form1()
{
InitializeComponent();
}
private void Form1_Load(object sender, EventArgs e)
{
string[] alllines = File.ReadAllLines("C:\\data.txt"); //读取所有这样的代码
foreach (var item in alllines)
{
string[] splits = item.Split('.');
contents.Add(splits[0], splits[1] splits[2]);
}
}
private void textBox1_TextChanged(object sender, EventArgs e)
{
if (contents.ContainsKey(textBox1.Text))
{
string s = contents[textBox1.Text].Split('.');
TextBox2.Text = s[0];
TextBox3.Text = s[1];
}
}
第3个回答  2013-07-08
取出字符串,用字符串的split方法来分割字符串。
第4个回答  2015-08-02
using (FileStream fRead = new FileStream(str, FileMode.Open, FileAccess.Read))
{
byte[] byt=new byte[2014*2014*5];
int x= fRead.Read(byt,0,byt.Length);
textBox1.Text = Encoding.Default.GetString(byt,0,x);
}
相似回答