簡體   English   中英

C#中的字符編碼

[英]Character encoding in C#

我在將字符另存為.pdf.rtf文件時遇到了字符丟失的問題。我有一個richtextbox來接受來自不同格式的用戶和文件保存選項的輸入。
當我在richtextbox中用英語寫東西並保存時,一切都很好。但是當我在寫東西而不是英語時..

richtextbox1.Text="আমার সোনার বাংলা"; //bangla language i used here

然后,如果我想將它們另存為.rtf或.pdf格式,則這些文件包含空格或顯示????? 符號。但是.docx和.txt文件正確顯示了這些字符。那么,如何解決.rtf,.pdf或.html的問題?
我使用Microsoft Sans Serif作為該richtextbox的字體。我嘗試使用unicode和utf8編碼來解決該問題,但還是沒有運氣。
編輯:
為了保存為.rtf格式,我使用了..

            richTextBox1.SaveFile(sfd.FileName, RichTextBoxStreamType.UnicodePlainText);

其中sfdsavefiledialog
對於.pdf,我用..

iTextSharp.text.Document myDocument = new iTextSharp.text.Document(PageSize.A4.Rotate());
            try
            {
                PdfWriter.GetInstance(myDocument, new FileStream(sfd.FileName, FileMode.Create));

                myDocument.Open();

                myDocument.Add(new iTextSharp.text.Paragraph(richTextBox1.Text));
            }
            catch (DocumentException de)
            {
                Console.Error.WriteLine(de.Message);
            }
            myDocument.Close();

你試過了嗎:

File.WriteAllText(filename, richtextbox1.RTF, Encoding.UTF8);

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM