文件编码问题
来源:互联网 发布:统计淘宝消费金额 编辑:程序博客网 时间:2024/05/22 05:30
/// <summary> 2 /// 获得文件编码 3 /// </summary> 4 /// <param name="content">文件流的字节数组</param> 5 /// <returns>字符编码</returns> 6 public static Encoding GetFileEncoding(byte[] content) 7 { 8 if (content.Length > 0) 9 {10 switch (content[0])11 {12 case 104:13 return Encoding.Default;14 case 255:15 return Encoding.Unicode;16 case 254:17 return Encoding.BigEndianUnicode;18 case 239:19 return Encoding.UTF8;20 default:21 return Encoding.Default;22 }23 }24 return Encoding.Default;25 }
根据文件流读出来的字节.做了简单的文件类型编码判断
/// <summary> /// 读文件流 /// </summary> /// <param name="stream">文件流;如:File.OpenRead(fileCurrentPath)</param> /// <param name="encoding">字符编码;如:Encoding.UTF8</param> /// <returns>流字符串</returns> public static string ReadFromStream(FileStream stream, Encoding encoding) { byte[] content = new byte[stream.Length]; stream.Read(content, 0, content.Length); stream.Close(); stream = null; if (encoding == Encoding.Default) { encoding = GetFileEncoding(content); } return encoding.GetString(content); } public static string ReadFromStream(FileStream stream,out Encoding encoding) { byte[] content = new byte[stream.Length]; stream.Read(content, 0, content.Length); stream.Close(); stream = null; encoding = GetFileEncoding(content); return encoding.GetString(content); }
/// <summary> 2 /// 写文件流 3 /// </summary> 4 /// <param name="stream">文件流;如:File.OpenWrite(fileCurrentPath)</param> 5 /// <param name="encoding">字符编码;如:Encoding.UTF8</param> 6 /// <param name="Text">要写的字符串</param> 7 /// <returns>bool</returns> 8 public static bool WriteToStream(FileStream stream, Encoding encoding, string Text) 9 {10 try11 {1213 byte[] content = encoding.GetBytes(Text.Replace("\n", "\r\n"));14 stream.SetLength(content.Length);15 stream.Write(content, 0, content.Length);16 stream.Close();17 return true;18 }19 catch20 {21 return false;22 }23 }
文件的读和写
- 文件编码问题集锦
- 文件的编码问题
- .NET 文件编码问题
- 文件编码问题集锦
- eclipse 文件编码问题
- egrep 文件编码问题
- 文件编码问题
- LInux 文件 编码问题
- css文件编码问题
- 文件编码问题集锦
- python 文件编码问题
- properties文件编码问题
- 文件编码问题
- java文件编码问题
- 文件编码问题
- properties文件编码问题
- 资源文件的编码问题
- java 属性文件编码问题
- 把自己的操作系统写入U盘(FAT32)引导扇区
- 在Livemedia的基础上开发自己的流媒体客户端 V 0.01
- linux 命令
- nefu 406
- jsp代码和js代码执行的顺序
- 文件编码问题
- php的打印函数
- Android中的长度单位详解(dp、sp、px、in、pt、mm)
- zImage内核镜像解压过程详解
- linux虚拟机访问windows宿主机的共享文件
- pyGTK_读书笔记_Tutorial Chapter 4_Packing Widgets
- 精神内守。这世界无法留恋.......
- c++(指针参数是如何传递内存的?)
- Django笔记-Cache