نقل قول: عدم نمایش مقادیر فارسی
کدتان را اینجا بگذارید تا دوستان بتواندد کمک کنند.
نقل قول: عدم نمایش مقادیر فارسی
کد به این شکله :
SqlConnection con = new SqlConnection();
con.ConnectionString = "server=(local);uid=sa;pwd=123456;database=mai n";
SqlCommand com = new SqlCommand();
com.Connection = con;
com.CommandText = "delete from table1";
con.Open();
com.ExecuteNonQuery();
con.Close();
com.Parameters.Add("@name", SqlDbType.NVarChar, 50);
com.Parameters.Add("@family", SqlDbType.NVarChar, 50);
com.Parameters.Add("@num", SqlDbType.Char, 20);
using (StreamReader reader = File.OpenText(@"c:\test.txt"))
{
while ((line = reader.ReadLine()) != null)
{
string[] Split = line.Split(new Char[] { ';' });
com.Parameters["@name"].Value = Convert.ToString(Split[0]);
com.Parameters["@family"].Value = Convert.ToString(Split[1]);
com.Parameters["@num"].Value = Convert.ToString(Split[2]);
com.CommandText = "insert into table1(name,family,num) values(@name,@family,@num)";
con.Open();
com.ExecuteNonQuery();
con.Close();
}
1 ضمیمه
نقل قول: عدم نمایش مقادیر فارسی
با اين كلاسي كه گذاشتم اووون string كه از تو فايل خوندي به فارسي تبديل كن
نقل قول: عدم نمایش مقادیر فارسی
اصلا مشکل من تو اعداد نیست
رشته ها رو داره به صورت مربع در متغیر ذخیره می کنه و ...... در بانک هم به همین شکل نمایش می ده
نقل قول: عدم نمایش مقادیر فارسی
كدت كه ظاهرا مشكلي نداره...ميتوني برنامتو بزاري ببينم چه كار كردي ...احتمال نميدي فقط رو سيستم خودت اين خطا رخ بده؟يعني ويندوزت خراب شده باشه..حالا كدت رو بزار يه تست بزنيم
نقل قول: عدم نمایش مقادیر فارسی
ظاهرا دوستمون زمانی که داده رو از فایل می خونه براش مربع می ریزه تو متغیر
نمیدونم از چه دستوری برای خوندن از فایل استفاده میکنی ولی از هر چی که استفاده میکنی
System .Text.Encoding.Utf8
System.IO.StreamReader oReader = new System.IO.StreamReader(strPathName, System.Text.Encoding.UTF8);
نقل قول: عدم نمایش مقادیر فارسی
با کد بالا که مشکل حل نشد
مشکل از ویندوز هم نیست چون در چند کامپیوتر دیگه هم امتحان کردم ... البته فایل text رو هم عوض کردم
دوستان گفته بودن برنامه ، خوب برنامه رو بالا گذاشتم
تعجب می کنم بچه هایی که با فایل کار کردنن چرا تا حالا با این مشکل برخود نکردن
نقل قول: عدم نمایش مقادیر فارسی
فکر نمی کنید اشکال از StreamReader باشه ، که داره یونیکد رو پشتیبانی نمی کنه
آیا به غیر از StreamReader راه دیگه برای خوندن فایل هستش
نقل قول: عدم نمایش مقادیر فارسی
من طبق سوالاتی که کردم به این نتیجه رسیدم که :
باید اطلاعات رو به صورت بیت به بیت بخونم و در بافر ذخیره کنم و سپس به database منتقل کنم
آیا کسی در این مورد اطلاعاتی داره ........
چطوری اطلاعات رو به صورت بیت به بیت بخونم در حالی که فایل من باینری نیست و text هستش
نقل قول: عدم نمایش مقادیر فارسی
نقل قول:
نوشته شده توسط
ssmehizadeh
من طبق سوالاتی که کردم به این نتیجه رسیدم که :
باید اطلاعات رو به صورت بیت به بیت بخونم و در بافر ذخیره کنم و سپس به database منتقل کنم
آیا کسی در این مورد اطلاعاتی داره ........
چطوری اطلاعات رو به صورت بیت به بیت بخونم در حالی که فایل من باینری نیست و text هستش
کدت مشکلی نداره ، مشکل یا از فایل تکست هست یا از کالکشن ستینگ sql server
نقل قول: عدم نمایش مقادیر فارسی
دوستان من وقتی کد رو به صورت زیر می نویسم به جای مربع داره علامت سوال میزنه (از همون روش خوندن بایت به بایت)
FileStream f = new FileStream("c:\\test.txt", FileMode.Open, FileAccess.Read);
byte [] a;
a = new byte[512];
int b = f.Read(a, 0, 512);
//MessageBox.Show(b.ToString());
string s = System.Text.Encoding.ASCII.GetString(a, 0, b);
MessageBox.Show(s);
حالا ممنون میشم بگید مشکلم از کجاست
در ضمن وقتی به جای Encoding.ASCII از Encoding.UTF8 استفاده می کنم باز مربع نشون میده
منتظر جوابم
نقل قول: عدم نمایش مقادیر فارسی
دوست عزیز فایل text داره از یه برنامه تحت dos تشکیل میشه و بعد با استفاده از برنامه dostowin (برنامه ای که اکثرا از اون استفاده می کنن که فکر کنم با دلفی 5 نوشته شده) تبدیل به حروف فارسی تحت ویندوز میشه
حالا می خواهم محتوای این فایل رو در بانک قرار بدم
نقل قول: عدم نمایش مقادیر فارسی
یک فایل تکست باز کن این خط را توش بنویس مثلا
علی ; علوی ; 1
حالا save as
encoding را utf-8 بگذار فایل را ذخیره کن و برنامه را اجرا کن و نتیجه را ببین ، اگر با این کار درست نشه در سمت sql مشکل داری
نقل قول: عدم نمایش مقادیر فارسی
ممنون
مشکل از همین بود
مرسی