PDA

View Full Version : مشکل در فایل ذخیره شده .



harani
جمعه 19 آبان 1391, 12:27 عصر
سلام دوستان چرا من یک ریچ باکس که آیتم های ریچ باکس م به فارسی تایپ شده هنگامیکه بوسیله ی یک دکمه مقادیر داخل آن در یک فایل ورد ذخیره میکنم و سپس فایلو که باز میکنم مقادیر فارسیم بصورت ؟؟ نشون داده میشه برای رفع این مشکل چه راه حلی دارین . من حتماً برای ذخیره سازی باید از کد زیر استفاده کنم .

richTextBox1.SaveFile(sfd.FileName);//Sfd = SaveFileDialog



با سپاس .

programerinfonet
جمعه 19 آبان 1391, 12:41 عصر
هرچی باشه احتمال قوی از فونته
فونت لیست ویو و فایل ورد رو بررسی کن

harani
جمعه 19 آبان 1391, 13:00 عصر
فونت Arial هستش .فکر نکنم مشکل از فونت باشه .

hakim22
جمعه 19 آبان 1391, 13:28 عصر
از encoding است


richTextBox1.SaveFile(saveFile1.FileName, _
RichTextBoxStreamType.PlainText)


موارد دیگر مربوط به RichTextBoxStreamType رو امتحان کنید :

اگر متن ساده فارسی بدون اندازه فونتها و رنگها لازم است -- UnicodePlainText
اگر یک rtf کامل لازم دارید -- RichText

مهرداد صفا
جمعه 19 آبان 1391, 13:29 عصر
سلام دوستان چرا من یک ریچ باکس که آیتم های ریچ باکس م به فارسی تایپ شده هنگامیکه بوسیله ی یک دکمه مقادیر داخل آن در یک فایل ورد ذخیره میکنم و سپس فایلو که باز میکنم مقادیر فارسیم بصورت ؟؟ نشون داده میشه برای رفع این مشکل چه راه حلی دارین . من حتماً برای ذخیره سازی باید از کد زیر استفاده کنم .

richTextBox1.SaveFile(sfd.FileName);//Sfd = SaveFileDialog



با سپاس .

سلام
لطفا کد مربوط به ذخیره فایل را اینجا بنویسید.

harani
جمعه 19 آبان 1391, 13:44 عصر
از encoding است


richTextBox1.SaveFile(saveFile1.FileName, _
RichTextBoxStreamType.PlainText)


موارد دیگر مربوط به RichTextBoxStreamType رو امتحان کنید :

اگر متن ساده فارسی بدون اندازه فونتها و رنگها لازم است -- UnicodePlainText
اگر یک rtf کامل لازم دارید -- RichText

ممنون از توضیحاتتون ولی تمامشو امتحان کردم جواب نداد . خواهشمندم پاسخ بدبد من نیاز دارم .

harani
جمعه 19 آبان 1391, 13:45 عصر
سلام
لطفا کد مربوط به ذخیره فایل را اینجا بنویسید.


richTextBox1.SaveFile(sfd.FileName,RichTextBoxStre amType.RichText);//Sfd = SaveFileDialog

مهرداد صفا
جمعه 19 آبان 1391, 14:23 عصر
چرا از Microsoft.Office.Interop.Word استفاده نمیکنید:
string FileName = @"e:\temp\doc1.rtf";
Microsoft.Office.Interop.Word.Application word = new Microsoft.Office.Interop.Word.Application();
if (System.IO.File.Exists(FileName))
{
word.Documents.Open(FileName, Visible = false );
}
else
{
word.Documents.Add();
word.Documents[1].SaveAs(FileName);
}

word.Documents[1].Range().Text = richTextBox1.Text;
word.Documents[1].Save();
word.Documents[1].Close();

harani
جمعه 19 آبان 1391, 15:03 عصر
Microsoft.Office رو سیستم من نمیشناسه .using خاصی میخواد ؟؟؟

مهرداد صفا
جمعه 19 آبان 1391, 16:10 عصر
Microsoft.Office رو سیستم من نمیشناسه .using خاصی میخواد ؟؟؟
فایل Microsoft.Office.Interop.Word.dll را به reference پروژه اضافه کنی.

harani
جمعه 19 آبان 1391, 16:24 عصر
تو Choose Item پبداش نکردم باید از Web بگیریم ؟؟؟

مهرداد صفا
جمعه 19 آبان 1391, 16:32 عصر
تو Choose Item پبداش نکردم باید از Web بگیریم ؟؟؟
از منوی Project گزینه Add reference را باز کنید. به سربرگ .net بروید و ..

harani
جمعه 19 آبان 1391, 16:58 عصر
من Microsoft.Office.Interop.Word.dll رو اضافه کردم ولی برنامه از خط زیر خطا میگیره مشکلش چیه ؟؟

Microsoft.Office.Interop.Word.Application word = new Microsoft.Office.Interop.Word.Application();

مهرداد صفا
جمعه 19 آبان 1391, 17:08 عصر
من Microsoft.Office.Interop.Word.dll رو اضافه کردم ولی برنامه از خط زیر خطا میگیره مشکلش چیه ؟؟

Microsoft.Office.Interop.Word.Application word = new Microsoft.Office.Interop.Word.Application();

احتمالا یا آفیس نصب نشده یا نسخه ای که reference کردید با نسخه نصب شده همخوانی ندارد.
دقت کنید نسخه 11 برای آفیس 2003 و 12 برای 2007 است.

harani
جمعه 19 آبان 1391, 17:38 عصر
من آفیس 2010 رو دارم Vs م 2010 هستش .

ma.rad
جمعه 19 آبان 1391, 17:42 عصر
فایل رو چطوری می خونی ؟کدشو بزار
اینطوری ذخیرش کن:

File.WriteAllLines(sfd.FileName,RichTextBoxStreamT ype.RichText, UTF8Encoding.UTF8);

harani
جمعه 19 آبان 1391, 18:07 عصر
فایل رو چطوری می خونی ؟کدشو بزار
اینطوری ذخیرش کن:

File.WriteAllLines(sfd.FileName,RichTextBoxStreamT ype.RichText, UTF8Encoding.UTF8);


ممنون ولی برنامه از این کد ایراد میگیره .

ma.rad
جمعه 19 آبان 1391, 18:33 عصر
چه خطایی می گیره؟

مهرداد صفا
جمعه 19 آبان 1391, 18:56 عصر
من آفیس 2010 رو دارم Vs م 2010 هستش .
add reference را باز کنید به سربرگ Brows رفته و فایل C:\Program Files\Microsoft Office\Office14\MSWORD.OLB(بسته به محل و نسخه نصب شده) را به reference اضافه کنید.