private void saveUniCodeEncodingText(string filename)
{
FileStream file = new FileStream(filename,FileMode.OpenOrCreate,FileAccess.ReadWrite);
StreamWriter writer = new StreamWriter(file,System.Text.Encoding.Unicode);
writer.Write(richTextBox1.Text);
writer.Close();
file.Close();
}

解决方案 »

  1.   

    不是用UNICODE存文件~~~~
    那个RICHTEXTBOX就有一个枚举变量可以设置~~~关键是RTF的UNICODE编码格式~~~
    URTF默认RICHTEXTBOX使用的是RTF1格式~~
      

  2.   

    seehttp://msdn.microsoft.com/library/default.asp?url=/library/en-us/vbcon/html/vbtsksavingfilewithwindowsformsrichtextboxcontrol.asp
    RichTextBoxStreamType Enumeration
    http://msdn.microsoft.com/library/en-us/cpref/html/frlrfsystemwindowsformsrichtextboxstreamtypeclasstopic.asp?frame=trueUnicodePlainText
      

  3.   

    TO  saucer(思归)Thanks!But it`s not the correct answer that I want.Use UnicodePlainText could save the Text in Unicode.But I want keep the style.When u use RichTextBox save the RTF file.It use rtf1,like this:{\rtf1\ansi\ansicpg936\deff0\deflang1033\deflangfe2052{\fonttbl{\f0\fnil\fcharset134 \'cb\'ce\'cc\'e5;}}
    \viewkind4\uc1\pard\lang2052\f0\fs18\'d6\'d0\'ce\'c4\par
    }But I want to use urtf, like this:
    {\urtf\deflang2052{\fonttbl{\f0\a 宋体}}
    \pard\f0\fs18\u20013?\u25991?
    \par }How to do? Or how to use UnicodePlainText will let the RTF file using urtf type
      

  4.   

    my question is, can you do that in msword? with what format?
      

  5.   

    QQ里面用的是URTF编码。
    这个问题该如何解决
    请高手指教
      

  6.   

    to  saucer(思归) In Msword, I edit a text and save as RTF file.But it save as RTF1.I don`t konw where I could set the format of RTF in MSword.
      

  7.   

    1.\ansi   Character Set   Flag   采用的字符集名称
    2.\b   Character Formatting Properties   Toggle   字符是粗体
    3.\b0   Character Formatting Properties   Toggle   字符是非粗体
    4.\blueNNN   Color Table   Value   标识蓝色的rgb数值(0-255)
    5.\brdrb   Paragraph Borders   Flag   段落边界底部
    6.\brdrcfNNN   Paragraph Borders   Value   段落边界颜色
    7.\brdrs   Paragraph Borders   Flag   段落边界单线边框
    8.\brdrt   Paragraph Borders   Flag   段落边界顶部
    9.\brdrth   Paragraph Borders   Flag   段落边界双线边框
    10.\brdrwNNN   Paragraph Borders   Value   段落边界线的宽度(单位是堤)
    11.\cfNNN   Character Formatting Properties   Value   字符前景色(0-255)
    12.\chpgn   Special Characters   Symbol   当前页号
    13.\colortbl   Color Table   Destination   颜色表
    14.\deffNNN   Font Table   Value   默认字体(N是字体号)
    15.\deftabNNN   Document Formatting Properties   Value   文档中默认tab宽度(单位是堤,默认值是720堤)
    16.\emdash   Special Characters   Symbol   长说明号——(特殊符号)
    17.\endash   Special Characters   Symbol   短说明号-(特殊符号)
    18.\fNNN   Character Formatting Properties   Value   字符的字体(N是在字体表中的编号)
    19.\fonttbl   Font Table   Destination   字体表
    20.\fonttype fontname         字体类型,字体名称
    21.\footer   Headers and Footers   Destination   所有页的页脚。
    22.\footeryNNN   Section Formatting Properties   Value   片断中页脚和底部的距离(单位是堤,默认是720堤)
    23.\fsNNN   Character Formatting Properties   Value   字符在半角状态下的字体大小(默认是24)
    24.\greenNNN   Color Table   Value   标识绿色的rgb值(0-255)
    25.\headeryNNN   Section Formatting Properties   Value   片断中标头和顶部的距离(单位是堤)
    26.\i   Character Formatting Properties   Toggle   字符是斜体
    27.\i0   Character Formatting Properties   Toggle   字符是非斜体
    28.\keepn   Paragraph Formatting Properties   Flag   段落与下段同页
    29.\line   Special Characters   Symbol   分隔符中的一种:换行符(不是段落分隔符)
    30.\li   Paragraph Formatting Properties   Value   段落的左缩进(默认是0)
    31.\margbNNN   Document Formatting Properties   Value   文档底部空白的高度(单位是堤)
    32.\marglNNN   Document Formatting Properties   Value   文档左部空白的宽度(单位是堤)
    33.\margrNNN   Document Formatting Properties   Value   文档右部空白的宽度(单位是堤)
    34.\margtNNN   Document Formatting Properties   Value   文档顶部空白的高度(单位是堤)
    35.\'   Special Characters   Symbol   ‘ 单撇符号
    36.\page   Special Characters   Symbol   分隔符中的一种:分页符
    37.\par   Special Characters   Symbol   新的段落标志
    38.\pard   Paragraph Formatting Properties   Flag   段落中用于对脚注,注释,标头,页脚等特殊信息分成单独的组,用来针对每个组单独指定独立于文本内容的格式。
    39.\plain   Character Formatting Properties   Flag   使字符格式恢复到应用指定的默认格式,相关的字符格式也恢复到应用指定的默认格式。
    40.\qc   Paragraph Formatting Properties   Flag   段落格式居中
    41.\qj   Paragraph Formatting Properties   Flag   段落两端对齐
    42.\ql   Paragraph Formatting Properties   Flag   段落格式左对齐
    43.\qr   Paragraph Formatting Properties   Flag   段落格式右对齐
    44.\redNNN   Color Table   Value   标识红色的rgb值
    45.\riNNN   Paragraph Formatting Properties   Value   段落格式的右缩进值(默认值为0)
    46.\rtf   RTF Version   Destination   RTF版本号
    47.\slmultNNN   Paragraph Formatting Properties   Value   段落的多倍行间距0 “最小”或“严格”的行距1  多倍行间距(相对于单倍行间距)
    48.\slN   Paragraph Formatting Properties   Value   段落的指定行间据可以调整或者默认为行的最大高度的字符的高度。
    49.\tab   Special Characters   Symbol   TAB字符
    50.\titlepg   Section Formatting Properties   Flag   片断中有特殊格式的第一页
    51.\tqr   Tabs   Flag   右部用TAB填充
    52.\tx   Tabs   Value   TAB位置,从左边空白处开始(而不是从左边页边缘开始,单位是堤)
    53.\ul   Character Formatting Properties   Toggle   字符具有连续的下划线(\ul0关闭连续的下划线)
    54.\widowctrl   Document Formatting Properties   Flag   文档的孤行控制
      

  8.   

    richTextBox.SaveFile(currentFileName,RichTextBoxStreamType.UnicodePlainText);RichTextBoxStreamType是richtextbox的编码方法
      

  9.   

    该方法好像不是楼主的意思这个方法是让保存的文件变成UnicodePlainText格式。。楼主指的是不保存就要UnicodePlainText格式大楷是这样的吧。
      

  10.   

    sorry, I have no ideawhere did you get the format from? if you cannot even get MSWord to save into that format, then most likely, RichTextBox doesn't support it
      

  11.   

    哦,哦,哦,哦,这种方法是在QQ里面用到过。。
    在不嫩能够该癌变起编码的的情况下就把代码头部
    的“{\rtf1”改写成“{\urft”就可以实现类似的
    功能。。
    HOHO。
    直接用RTF1回出现问题。。
    有没有办法让改RICHTEXTBOX的编码(在不保存的情
    况下)。
      

  12.   

    save it into a stream first, for exampleusing System.IO;StringWriter sw = new StringWriter();
    ..SaveFile(sw,...);
    string s = sw.ToString();
    ....
      

  13.   

    to cfanwolf(腐肉僵尸)呵呵,这个方法实际上我已经试过了~~~对于英文和图形是可以的~~~
    但是中文不行~~~{\rtf1\ansi\ansicpg936\deff0\deflang1033\deflangfe2052{\fonttbl{\f0\fnil\fcharset134 \'cb\'ce\'cc\'e5;}}
    \viewkind4\uc1\pard\lang2052\f0\fs18\'d6\'d0\'ce\'c4\par
    }{\urtf\deflang2052{\fonttbl{\f0\a 宋体}}
    \pard\f0\fs18\u20013?\u25991?
    \par }你能注意到\'d6\'d0\'和\u20013?
    这样的区别~~~~实际上如果直接替换rtf1到urtf,那么中文就会显示为乱码~~~不过还是谢谢大家~~~这帖子挂到春节就结掉~~~~~实在不行看来只能写一个urtf编码类了~~~:(
      

  14.   

    呵呵。。这个问题我到是没有注意。谢谢你的提醒不过记得写出URTF类的时候记得发给我。。让我也使用一下。OK???
    密切关注URTF编码问题