C#编程之读写文件
小标 2019-01-15 来源 : 阅读 1102 评论 0

摘要:本文主要向大家介绍了C#编程之读写文件,通过具体的内容向大家展示,希望对大家学习C#编程有所帮助。

本文主要向大家介绍了C#编程之读写文件,通过具体的内容向大家展示,希望对大家学习C#编程有所帮助。

1、使用 FileStream 读写文件
  添加命名空间引用:

using System;
using System.Collections.Generic;
using System.Text;
using System.IO;

  读取核心代码:

byte[] byData = new byte[100];
char[] charData = new char[1000];
try
{
    FileStream sFile = new FileStream("文件路径",FileMode.Open);
    sFile.Seek(55, SeekOrigin.Begin);
   //第一个参数是被传进来的字节数组,用以接受FileStream对象中的数据,第2个参数是字节
    // 数组中开始写入数据的位置,它通常是0,表示从数组的开端文件中向数组写数据,
    //最后一个参数规定从文件读多少字符.
    sFile.Read(byData, 0, 100); }
catch (IOException e)
{
    Console.WriteLine("An IO exception has been thrown!");
    Console.WriteLine(e.ToString());
    Console.ReadLine();
    return;
}
Decoder d = Encoding.UTF8.GetDecoder();
d.GetChars(byData, 0, byData.Length, charData, 0);
Console.WriteLine(charData);
Console.ReadLine();

  写入核心代码:

FileStream fs = new FileStream(文件路径,FileMode.Create);
//获得字节数组
byte [] data =new UTF8Encoding().GetBytes(String);
//开始写入
fs.Write(data,0,data.Length);
//清空缓冲区、关闭流
fs.Flush();
fs.Close();

  
2、使用StreamReader和StreamWriter读写文件
  StreamReader 读取文件:

StreamReader objReader = new StreamReader(文件路径);
string sLine="";
ArrayList LineList = new ArrayList(); 
while (sLine != null)
{
    sLine = objReader.ReadLine();
    if (sLine != null&&!sLine.Equals(""))
        LineList.Add(sLine);
}
objReader.Close();
return LineList;

  StreamWriter写文件:

FileStream fs = new FileStream(文件路径,FileMode.Create);   StreamWriter sw = new StreamWriter(fs, System.Text.Encoding.GetEncoding("GB2312"));//通过指定字符编码方式可以实现对汉字的支持,否则在用记事本打开查看会出现乱码
sw.Flush();
if (checkfile)
{
   sw.BaseStream.Seek(0, SeekOrigin.End);//移动到结尾
}
else
{
   sw.BaseStream.Seek(0, SeekOrigin.Begin);
}
string temp = "随便写点东西";
sw.WriteLine(temp);
sw.Flush();
sw.Close();fs.Close();

本文由职坐标整理并发布,希望对同学们有所帮助。了解更多详情请关注职坐标编程语言C#.NET频道!

本文由 @小标 发布于职坐标。未经许可,禁止转载。
喜欢 | 0 不喜欢 | 0
看完这篇文章有何感觉?已经有0人表态,0%的人喜欢 快给朋友分享吧~
评论(0)
后参与评论

您输入的评论内容中包含违禁敏感词

我知道了

助您圆梦职场 匹配合适岗位
验证码手机号,获得海同独家IT培训资料
选择就业方向:
人工智能物联网
大数据开发/分析
人工智能Python
Java全栈开发
WEB前端+H5

请输入正确的手机号码

请输入正确的验证码

获取验证码

您今天的短信下发次数太多了,明天再试试吧!

提交

我们会在第一时间安排职业规划师联系您!

您也可以联系我们的职业规划师咨询:

小职老师的微信号:z_zhizuobiao
小职老师的微信号:z_zhizuobiao

版权所有 职坐标-一站式IT培训就业服务领导者 沪ICP备13042190号-4
上海海同信息科技有限公司 Copyright ©2015 www.zhizuobiao.com,All Rights Reserved.
 沪公网安备 31011502005948号    

©2015 www.zhizuobiao.com All Rights Reserved

208小时内训课程