<form id="hz9zz"></form>
  • <form id="hz9zz"></form>

      <nobr id="hz9zz"></nobr>

      <form id="hz9zz"></form>

    1. 明輝手游網中心:是一個免費提供流行視頻軟件教程、在線學習分享的學習平臺!

      讀寫文件時編碼問題(一些經驗,提供給大家)

      [摘要]前些日子,在用VB.NET寫自己的視頻點播站點時,出現了一個讓我很是生氣的問題,由于用RealPlayer播放的視頻通過REALSERVER播放,因此我建立了REALSERVER,但是RM格式文件如...
      前些日子,在用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格式成為通用的格式,而別的提供商卻并不買它的帳



      日韩精品一区二区三区高清