PDA

View Full Version : خواندن فایل RTF



barnamenevisjavan
شنبه 17 مرداد 1394, 23:06 عصر
سلام میخوام فایل متنی rtf رو فقط خط اولش رو بخونم و توی جعبه پیغام نمایش بدم از StreamReader استفاده کردم ولی متن رو صحیح نمایش نداد.

pbm_soy
یک شنبه 18 مرداد 1394, 00:09 صبح
f جزو فایلهای متنی اسکی یا یونیکد نیستند و یا بخوام بهتر بگم جزو فایلهای متنی خالص نیستند و برای اینکه فرمت و رنگ متن را ذخیره کنند متن را با فرمت خاصی بصورت باینری در فایل ذخیره میکنند
یعنی این فایلها ساختار باینری دارند
فرمت rich text file را دارند و باید در یک rich text box باز شوند ویا اینکه از طریق شی rich text box متن آنرا تبدیل به متن ساده کنید و بعد در جاهای دیگر نمایش دهید

barnamenevisjavan
یک شنبه 18 مرداد 1394, 09:33 صبح
f جزو فایلهای متنی اسکی یا یونیکد نیستند و یا بخوام بهتر بگم جزو فایلهای متنی خالص نیستند و برای اینکه فرمت و رنگ متن را ذخیره کنند متن را با فرمت خاصی بصورت باینری در فایل ذخیره میکنند
یعنی این فایلها ساختار باینری دارند
فرمت rich text file را دارند و باید در یک rich text box باز شوند ویا اینکه از طریق شی rich text box متن آنرا تبدیل به متن ساده کنید و بعد در جاهای دیگر نمایش دهید
خیلی ممنون از توضیحاتی که دادید.اگر ممکنه یک راه حلی برام ارائه کنید.
من نزدیک 300 تا فایل rtf توی یه پوشه دارم هر فایل داخلش یه داستان هست که خط اولش موضوع داستانه.من قصد دارم از یه لیست باکس استفاده کنم و بجای اینکه تک تک متون رو کپی پست کنم میخوام با کد نویسی و استفاده از یک حلقه تک تک فایل هارو باز کنم و خط اول اون رو بخونم و داخل لیست باکس بریزم.من همین کار رو توسط فایل txt بخوبی انجام دادم ولی روی rtf نتونستم حالا شما چه پیشنهادی برای اینکار دارید؟

Mahmoud.Afrad
یک شنبه 18 مرداد 1394, 23:08 عصر
pbm_soy (http://barnamenevis.org/member.php?20034-pbm_soy) جواب رو دادند.

این هم نمونه:

using (RichTextBox myRichTextBox = new RichTextBox())
{
myRichTextBox.LoadFile("FilePath", RichTextBoxStreamType.RichText);
if (myRichTextBox.Text.Length > 0) listBox1.Items.Add(myRichTextBox.Text[0]);
}