三度网教程:是一个免费提供流行视频软件教程、在线学习分享的学习平台!

读写文件时编码问题(一些经验,提供给大家)

时间:2024/6/7作者:未知来源:三度网教程人气:


前些日子,在用VB.NET写自己的视频点播站点时,出现了一个让我很是生气的问题,由于用RealPlayer播放的视频通过REALSERVER播放,因此我建立了REALSERVER,但是RM格式文件如果想进行剪辑或编辑,类似于MEDIA提供的ASX文件一样,它提供了RAM和SMIL文件的格式,其实就是纯粹的文本,该文本中包含了播放的路径如rtsp://.....rm以及开始播放时间、结束播放时间等信息,我利用文件读写IO接口去写,写成smil文件格式,但是,英文没有任何问题,写成中文就出了问题,乱码!
我检查了web.config文件中后发现我的选择是GB2312啊,没有问题。怎么回事呢?后来我发现web.config不控制文件读写部分功能。
于是查了MSDN,发现在StreamWriter对象中有一个Encoding方法,引起了我的注意,后来终于把问题解决了,下面是部分代码:

Dim f As New StreamWriter(Server.MapPath("tmpWord.smil"), False, System.Text.Encoding.GetEncoding("GB2312"), 512)

这样是简便的写法,直接在New的时候写参数,或者用f.Encoding
其中,Server.MapPath("tmpWord.smil")自然就是要写入文件的路径,False部分是用来表明是否保留原先的内容,如果True则保留,新的内容写入无效,如果False则覆盖原先的内容,System.Text.Encoding.GetEncoding("GB2312"), 是要得到需要用的编码格式,默认的编码格式是UTF-8,所以这里要写明我们要用到的GB2312,512是写入缓存的大小。

简单吧,千万不要被写入.TXT文件中文部分没问题所迷惑,因为微软想让它的UTF8格式成为通用的格式,而别的提供商却并不买它的帐

关键词:  读写文件时编码问题(一些经验  提供给大家)





Copyright © 2012-2018 三度网教程(http://www.3du8.cn) .All Rights Reserved 网站地图 友情链接

免责声明:本站资源均来自互联网收集 如有侵犯到您利益的地方请及时联系管理删除,敬请见谅!

QQ:1006262270   邮箱:kfyvi376850063@126.com   手机版