首页 > Windows开发 > 详细

C#_File_Assembly

时间:2015-09-24 09:26:31      阅读:243      评论:0      收藏:0      [点我收藏+]

//--------------------------------------------^ ^-----------------------------------------------------------

static  void  Main(string[] args)

{

  //1.get   current  assembly  location

  string    currentPath=Assembly.GetExecutingAssembly().Location;    //Get Executing Assembly()  

  string    currentDirectoryPath=Path.GetDirectoryName(currentPath);

  

  //2.create  a  file   under    current  directory  path

  FileStream   fs=File.Create(currentDirectoryPath+@"\test.txt");

  fs.Close();

  

  string   msg="This is a test string..";

  //3.change  string to byte[]

  byte[]   bs=System.Text.Encoding.UTF-8.GetBytes(msg);

  File.WriteAllBytes(currentDirectoryPath+@"\test.txt",bs);

  

  //4.change byte[]  to string 

  byte[]   rbs=File.ReadAllBytes(currentDirectoryPath+@"\test.txt");

  string   rString=System.Text.Encoding.UTF-8.GetString(rbs);

  Console.WriteLine(rString);

}

//-----------------------------------------------------------------------------------------

编码乱码问题:

技术分享
 //英文占1个字节8个bit    中文占2个字节 16个bit        Unicode 国际码表 ->在该码表中 任何字符都占2个字节

            //文件头 标记文件的编码格式

            //UTF-8   国际码表:  英文占1个字节    中文占3个字节

//乱码问题出现:  文件保存编码格式与读取文件的编码格式不一致
View Code

 //----------------------------------------------------------------------------------------

文件读写步骤:

    string txt="This is a filestream  test";

    byte[]  buffer= System.Text.Encoding.UTF8.GetBytes(txt);

    //1.创建文件流   

      FileStream fs=new FileStream(@"D:\test.txt",FileMode.Create,FileAccess.Write);    //(文件位置,创建文件模式,权限)

    //2.写入文件

      fs.Write(buffer,0,buffer.Length);    //(要写入的数组,开始写入的位置一般是0,要写入的长度)

    //3.关闭文件流 清空缓冲区

      fs.Flush();

      fs.Close();

    //4.释放相关资源

      fs.Dispose();    //一般调用此步骤就行    包含第三步

//---------------

  以上 不需要手动调用第四步的方法:    加using:

  using(FileStream fs=new FileStream(@"D:\fileTest.txt",FileMode.Create,FileAccess.Write))    //当fs作用域超出此范围时候自动调用   fs.Dispose();

  {

    fs.Write(buffer,0,buffer.Length);

  }  

//-----------------------------------------------------------------------------------------

  

 

C#_File_Assembly

原文:http://www.cnblogs.com/siyi/p/4831178.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!