PDA

View Full Version : تغییر مسیر باز کردن فایل xml هنگام استفاده از فایل دیالوگها



amir-haghighi
یک شنبه 05 مهر 1388, 17:52 عصر
با سلام .

من فایل xml رو به باز میکنم و هیچ مشکلی ندارم . یک دکمه هم روی فرمم گذاشتم که با کلیک بر روی اون فایل xml باز میشه و اطلاعات بر روی اون خونده میشه و وشته میشه .

این کار رو در داخل یک متد انجام میدم . حالا میخوام بعد از اینکه از openfiledialog و یا savefiledialog استفاده میکنم دوباره اون تابع رو صدا بزنم و همون کار ها رو دوباره انجام بدم .

اما نمیدونم چرا به جای اینکه بره و فایل رو از تو مسیر برنامه بخونه میره از توی my document میخونه ؟!

من فایل رو با کد زیر باز میکنم ::




try{
filestream f = new filesteram();
}


catch(execaption err)

messagebox.show(err.message.tostring());




در حالت عادی وقتی تابع رو صدا میزنم تغییرات من رو بر روی اطلاعات انجام میده اما وقتی دیالوگها رو مورد استفاده قرار میدم به جای اینکه فایل رو بره از تو پوشه برنامه باز نه میره تو my document دنبالش میگرده !

Saeed.Masoumi
یک شنبه 05 مهر 1388, 18:42 عصر
سلام

ببین شما بعد از استفاده از دیالوگ ها (اپن فایل و...) میای و مسیر جاری رو توی برنامت تغییر می دی برای اینکار موقععی که می خوای فایل XML رو بازکنی از نوعی دیگه از آدرس دهی استفاده کن من فک می کنم شما به اینصورت آدرس دهی کرده اید:


@"\YourDirectory\file.xml

شما بعد از اینکه با OpenfileDialog میای یک فایل رو باز می کنی مسیر از حالت قبل خارج می شه (مثلا می ره توی Mydocuments ) بعد آدرس به این شکل تغییر میکنه:


@"Mydocuments\YourDirectory\file.xm

برای اینکار از کلاسهای Enviroment , Path , .... استفاده کن

amir-haghighi
دوشنبه 06 مهر 1388, 13:09 عصر
سلام ...

میشه یه مثال بزنید ؟

amir-haghighi
سه شنبه 07 مهر 1388, 18:00 عصر
سلام . من نتونستم مشکلم رو حل کنم . میشه یه مثال بزنید ؟

ESG_Esfahan
چهارشنبه 08 مهر 1388, 01:53 صبح
سلام
من فکر می کنم مشکل شما اینه که مسیر کامل برای فایها نمیدین و از مسیر جاری سیستم استفاده می کنید.
در ابتدا که برنامه را اجرا می کنید مسیر جاری سیستم همون پوشه ی فایل اجرایی شماست ولی با بازکردن دیالوگ مسیر عوض میشه و مشکل ساز شده.
اگر همیشه فایلهایی که استفاده می کنید کنار فایل exe شما هستند مسیر فایلها را به صورت زیر استفاده کن


Application.StartupPath + @"\ file name"
موفق باشید