Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/308.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/ms-access/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 如何以编程方式读取和修改印地语.rtf文件?_C#_Filestream_Rtf - Fatal编程技术网

C# 如何以编程方式读取和修改印地语.rtf文件?

C# 如何以编程方式读取和修改印地语.rtf文件?,c#,filestream,rtf,C#,Filestream,Rtf,我有一个印地语RTF文件,内容如下: कोलकाता, 11दिसंबर पश्चिम बंगाल के बर्दवान जिले में कक्षा नौ की एक छात्रा ने फांसी लगाकर आत्महत्या कर ली। 在我的控制台应用程序中,我希望读取RTF文件并通过编程更改某些内容 我使用streamreader读取文件,但当转换为字符串时,会产生以下输出: ÚUæCþUØ-SßSØ ýSß230;§§ÙÜÜ•ýæ216æææææ ÖæðæÜ,“维维维维维维维维

我有一个印地语RTF文件,内容如下:

कोलकाता, 11दिसंबर पश्चिम बंगाल के बर्दवान जिले में कक्षा नौ की एक छात्रा ने फांसी लगाकर आत्महत्या कर ली।

在我的控制台应用程序中,我希望读取RTF文件并通过编程更改某些内容

我使用streamreader读取文件,但当转换为字符串时,会产生以下输出:

ÚUæCþUØ-SßSØ

ýSß230;§§ÙÜÜ•ýæ216æææææ

ÖæðæÜ,“维维维维维维维维维维维维维维维维维维维维维维维维维维维维维维维维维维维维维维维维维维维维维维维维维维维维维维维维维维维维维维维维维维维维维维维维维维维维维维维维维维维维维维维维维维维维维维维维维维维维维维维维维维维维维维维维维维维维维维维维维维维维维维维维维维维维维维维维维维维维维维维维维维维维维维维维维维维维维维维维维维维维维维维维维维维维维维维维维维维维维维维维维维维维维维维维维维维维维维维维维维维维维维维维维维维维维维维维维维维维维维维维维维维维维维维维维维维维维维维维ÌæÚUæðÜÌÚðUðñUÐ

从2010年10月23日日日日日日日日日方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方ð

我曾尝试使用windows窗体RichTextBox读取RTF文件,但它始终显示无效的文件格式

那么,在C中读取和修改rtf文件的最佳解决方案是什么呢

StreamReader sr = new StreamReader(fpath, Encoding.Default, true);
string s1 = sr.ReadToEnd();
sr.Close();
也试过

using (System.Windows.Forms.RichTextBox rtBox = new System.Windows.Forms.RichTextBox())
{
    // Get the contents of the RTF file. Note that when it is 
    // stored in the string, it is encoded as UTF-16. 
    string s = System.IO.File.ReadAllText(fpath);

    // Convert the RTF to plain text.
    rtBox.Rtf = s; // error file format invalid
    string plainText = rtBox.Text;
}
RichTextBox控件可以,但不要使用StreamReader读取RTF文件,因为它可能包含许多控件字符

将文件加载到RichTextBox后,使用Text属性获取文件的纯文本


RichTextBox还有一个SaveFile方法,可以将修改后的内容保存到文件中。

指定编码可能是最好的解决方案。我已经尝试了C.NetBackup支持的所有编码,但您没有尝试显示您尝试过的内容。请尝试在开头和结尾修剪任何'\r'或'\n'。印地语是仅限unicode的区域设置,值得打赌的是,该文件保存为UTF-8或UTF-16i。我已经使用了richtextbox。请参阅我发布的代码。它给出的错误文件格式无效。即使loadfile方法也会出现同样的错误。您能用MS Word打开它吗?MS Word不是服务器的正确方式。在我的本地系统中,rtf文件是用MS打开的,但会产生上述相同的结果,就像我的结果一样,比如,其中一名名名名名为为本方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方当我选择Chanayka字体时,它会以印地语显示文本关于rtb.SelectAll;rtb.SelectionFont=new FontChanayka,。。。;,喜欢