21-04-19, 08:57 AM
سلام عليكم
اريد من حضرتكم
كود لسحب مستند نصي من اي مكان في الكمبيوتر
و
افلاته في منطقة
Button
وبحيث تنزل محتويات المستند النصي
في Textbox1
وشكرا
If e.Data.GetDataPresent(DataFormats.FileDrop) Then
e.Effect = DragDropEffects.Copy
End If For Each path In e.Data.GetData(DataFormats.FileDrop)
If System.IO.Path.GetExtension(path) = ".txt" Then
Dim FileSR As IO.StreamReader
FileSR = System.IO.File.OpenText(path)
TextBox1.Text = FileSR.ReadToEnd()
FileSR.Close()
Else
MsgBox("عفواً يجب ان يكون الملف بصيغة txt.")
End If
Next
Button1.Text = "جلب ملف..." Button1.Text = "إسقاط ملف..." Button1.Text = "جلب ملف..." Dim OFD As New OpenFileDialog
OFD.InitialDirectory = My.Computer.FileSystem.SpecialDirectories.Desktop
OFD.Filter = "txt files (*.txt)|*.txt"
OFD.FilterIndex = 1
OFD.RestoreDirectory = True
If OFD.ShowDialog() = System.Windows.Forms.DialogResult.OK Then
If System.IO.Path.GetExtension(OFD.FileName) = ".txt" Then
Dim FileSR As IO.StreamReader
FileSR = System.IO.File.OpenText(OFD.FileName)
TextBox1.Text = FileSR.ReadToEnd()
FileSR.Close()
Else
MsgBox("عفواً يجب ان يكون الملف بصيغة txt.")
End If
End If(22-04-19, 12:30 AM)ابو روضة كتب : [ -> ]ماشاء الله عليك أخى جوكر فنان ..لو سمحت أخى حينما فعلت هذا وسحبت مستند نصى به حروف عربية بتظهر لى مشوشة كلهاوبتظهر بلغة غريبة جدا فهل هناك حل
Encoding: ANSI
Encoding: UTF-8
Dim FileSR As IO.StreamReader
FileSR = System.IO.File.OpenText(OFD.FileName)
TextBox1.Text = FileSR.ReadToEnd()
FileSR.Close() Dim FileSR As IO.StreamReader = New IO.StreamReader(OFD.FileName, System.Text.Encoding.GetEncoding("windows-1256"))
TextBox1.Text = FileSR.ReadToEnd()
FileSR.Close() Dim FileSR As IO.StreamReader = New IO.StreamReader(OFD.FileName, System.Text.Encoding.Default)
TextBox1.Text = FileSR.ReadToEnd()
FileSR.Close()ASCII - Unicode - UTF32 - UTF7 - UTF8(22-04-19, 01:23 AM)elgokr كتب : [ -> ](22-04-19, 12:30 AM)ابو روضة كتب : [ -> ]ماشاء الله عليك أخى جوكر فنان ..لو سمحت أخى حينما فعلت هذا وسحبت مستند نصى به حروف عربية بتظهر لى مشوشة كلهاوبتظهر بلغة غريبة جدا فهل هناك حل
تسلم اخى ابو روضة
يرجع الامر هنا لان محتوى الملف عربيولكن الملف عند الحفظ تم حفظه على
PHP كود :
Encoding: ANSI
ولحل المشكلة يفضل اعادة حفظ الملف ليكون
PHP كود :
Encoding: UTF-8
وكذلك يمكنك تعديل الكود فى الشرح على هذا الجزء
كود :
Dim FileSR As IO.StreamReader
FileSR = System.IO.File.OpenText(OFD.FileName)
TextBox1.Text = FileSR.ReadToEnd()
FileSR.Close()
ليصبح بهذا الشكل
كود :
Dim FileSR As IO.StreamReader = New IO.StreamReader(OFD.FileName, System.Text.Encoding.GetEncoding("windows-1256"))
TextBox1.Text = FileSR.ReadToEnd()
FileSR.Close()
يمكنك تعديل windows-1256 الى 1256 فقط يمكنك مراجعة الرابط هنا للمزيد
أو بهذا الشكل
كود :
Dim FileSR As IO.StreamReader = New IO.StreamReader(OFD.FileName, System.Text.Encoding.Default)
TextBox1.Text = FileSR.ReadToEnd()
FileSR.Close()
مع تغيير Default الى
كود :
ASCII - Unicode - UTF32 - UTF7 - UTF8
ويفضل ان يكون على الافتراضي لان بكلا الحالاتستحتاج على تعديل حفظ الملف كما تم ذكره بالاعلى
تحياتى لكوتمنياتى لك التوفيق