PDA

View Full Version : مشکل در ایجاد فایل و عملیات روی آن در vc# فوری!!



amirm5759
جمعه 19 آبان 1391, 17:05 عصر
سلام
من یه برنامه کوچیک نوشتم که تو آدرسی که تو textbox2 بهش میدم باید یک فایل ایجاد کنه و هرچی تو textbox1 هست بریزه تو اون فایل که پسوندشو .txt میدم ولی بعد از کلیک روی باتن مورد نظر از اون خط برنامه که فیلو ایجاد میکنه ایراد میگیره
کدرو پایین میذارم تروخدا یکی راهنماییم کنه
private void button1_Click(object sender, EventArgs e)
{
string i;
i = Convert.ToString(textBox2.Text);
FileStream file = new FileStream(i, FileMode.Open, FileAccess.ReadWrite);
TextWriter tw = new StreamWriter(file);
tw.WriteLine(textBox1.Text);
tw.Close();


}

مهرداد صفا
جمعه 19 آبان 1391, 17:39 عصر
سلام
احتمالا فایلی را میخواهید باز کنید که وجود ندارد.
برای ایجاد فایل کد را به صورت زیر تغییر دهید:

string i;
FileStream file = new FileStream(i, System.IO.FileMode.OpenOrCreate, System.IO.FileAccess.ReadWrite)
TextWriter tw = new StreamWriter(file);
tw.WriteLine(textBox1.Text);
tw.Close();

موفق باشید.

amirm5759
جمعه 19 آبان 1391, 17:52 عصر
سلام
احتمالا فایلی را میخواهید باز کنید که وجود ندارد.
برای ایجاد فایل کد را به صورت زیر تغییر دهید:

string i;
FileStream file = new FileStream(i, System.IO.FileMode.OpenOrCreate, System.IO.FileAccess.ReadWrite)
TextWriter tw = new StreamWriter(file);
tw.WriteLine(textBox1.Text);
tw.Close();

موفق باشید.
مرسی ولی بازم اشکال میگیره از همون خط قبلی

مهرداد صفا
جمعه 19 آبان 1391, 18:09 عصر
مرسی ولی بازم اشکال میگیره از همون خط قبلی
لطفا متن خطا را بنویسید.

amirm5759
جمعه 19 آبان 1391, 18:39 عصر
لطفا متن خطا را بنویسید.
ببینید خطا نمیده همون خطی رو که تغییر دادید زرد میکنه میره تو محیط debug

amirm5759
جمعه 19 آبان 1391, 18:41 عصر
ببینید خطا نمیده همون خطی رو که تغییر دادید زرد میکنه میره تو محیط debug
اگر بخواهید عکسشو براتون آپ میکنم

مهرداد صفا
جمعه 19 آبان 1391, 19:49 عصر
اگر بخواهید عکسشو براتون آپ میکنم
به آخر خط یک ";" اضافه کنید؛
اگر مشکل دیگری دارد متن (DESCRIPTION) خطا را بنویسید.

amirm5759
جمعه 19 آبان 1391, 19:56 عصر
به آخر خط یک ";" اضافه کنید؛
اگر مشکل دیگری دارد متن (DESCRIPTION) خطا را بنویسید.
از اولم تو خود سی شارپ ; گذاشته بودم تو اینجا یادم رفت بذارم الان عکس ارور رو براتون میذارم البته ارور نیست یه چیز دیگس نمیدونم بهش چی میگین؟

amirm5759
جمعه 19 آبان 1391, 20:00 عصر
از اولم تو خود سی شارپ ; گذاشته بودم تو اینجا یادم رفت بذارم الان عکس ارور رو براتون میذارم البته ارور نیست یه چیز دیگس نمیدونم بهش چی میگین؟
http://upload.tehran98.com/images/daa53r1tczrmbtiw2i6z.jpg94686

Y_Safaiee
جمعه 19 آبان 1391, 20:18 عصر
سلام دوست من
منظورتونو نفهمیدم و به نظرم کدتون مشکل داره این کارو طبق درخواستتون میشه اینطوریم نوشت و لقمه رو نچرخوند.



using System.IO;
namespace WindowsFormsApplication3
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}

private void button1_Click(object sender, EventArgs e)
{
StreamWriter writer = new StreamWriter(txt_masir.Text, true, Encoding.Unicode);
writer.Write(txt_string.Text );
writer.Close();
}
}
}



موفق باشی
بایت بایت

amirm5759
جمعه 19 آبان 1391, 20:28 عصر
آقا دست همتون درد نکنه ما بی خیالش شدیم ممنون از کمکاتون

hakim22
جمعه 19 آبان 1391, 21:01 عصر
دوست عزیز در ویندوز اجازه دسترسی به درایو c به طور مستقیم وجود نداره و شما ابتدا باید premission اون رو از کاربر بگیرید یا برنامتون run as administrator اجرا بشه.
بجای c از درایو d استفاده کنید اگر مشکل حل شد احتمالا همون دسترسی در ویندوز 7 است.

Y_Safaiee
جمعه 19 آبان 1391, 21:06 عصر
با سلام مجدد

شما در txt_masir مسیر رو اینطوری بنویس c:\1.txt
در txt_string هم متنتو

بعد رو دکمه کلیک کن در درایو سی و با نام دلخواه و متن ورودی شما ساخته میشه.

موفق باشی
بایت بایت

MrsiLeNt
جمعه 19 آبان 1391, 21:21 عصر
دقیقا با دو تا کد ساده میشه این برنام رو نوشت اصلا نیازی به این همه شی تعریف کردن نیست !!!
با یه مثال ساده مثلا تکست باکس 1 رو آدرس فایل وارد میکنین و تکست باکس دو رو اون مقداری که میخوایین در فایل سیو شه :


string i = @txtpath.Text;
File.WriteAllText(i, txtfield.Text);
MessageBox.Show("Sucefully Saved On " + txtpath.Text);

جالبه بدونید متد WriteAllText اگر فایلی که قبلا وجود داشته باشه رو دوباره همون آدرس قبلی بهش بدین خودش Replace می کنه.