Forum

.txt kayıt formatın...
 
Bildirimler
Hepsini Temizle

.txt kayıt formatını UTF-8 nasıl yaparım

3 Yazılar
2 Üyeler
0 Likes
1,822 Görüntüleme
(@metinbeci)
Gönderiler: 5
Active Member
Konu başlatıcı
 

Merhaba basic ile yazdıgım bir programda c:\kasa dizinin altında hesap.txt dosyası varmı yokmu diye kontrol ettiriyorum eğer yoksa oluşturuyorum daha sonra içerisine yazdırmak istediklerimi yazdırıyorum fakat dosya kayıt türü türkce karakterden dolayı işimi görmüyor ANSI olarak kaydediyor.ben dosya kayıt türünün UTF-8 olmasını istiyorum yapamadım belki dosya olustukdan sonra formatını değiştirebilirim diye düşünüyorum.Nasıl bir yol izlemem gerekiyor.Kullandıgım kodlar asagıda.

 

    Dim kasa_fs As System.IO.FileStream = New System.IO.FileStream("C:\kasa\hesap.txt", IO.FileMode.Create)
    Dim kasa_wr As System.IO.StreamWriter = New System.IO.StreamWriter(kasa_fs)

    kasa_wr.Close()

   FileOpen(1, "C:\kasa\hesap.txt", OpenMode.Output)

   PrintLine(1, hesap_kod+ Space(30 - Len(hesap_kod)) + Mid(hesap_ad, 1, 25))

 

bu sekıllerde de denedım ama hata aldım

Dim kasa_wr As System.IO.StreamWriter = New System.IO.StreamWriter(kasa_fs, False, Encoding.UTF8)

Dim kasa_wr As System.IO.StreamWriter = New System.IO.StreamWriter(kasa_fs, True, System.Text.Encoding.Default)

hata mesajı :

error 15 Overload resolution failed because no accessible 'New' can be called with these arguments: 'Public Sub New(path As String, append As Boolean, encoding As System.Text.Encoding)': Value of type 'System.IO.FileStream' cannot be converted to 'String'. 'Public Sub New(stream As System.IO.Stream, encoding As System.Text.Encoding, bufferSize As Integer)': Value of type 'Boolean' cannot be converted to 'System.Text.Encoding'. 'Public Sub New(stream As System.IO.Stream, encoding As System.Text.Encoding, bufferSize As Integer)': Value of type 'System.Text.Encoding' cannot be converted to 'Integer'.

 
Gönderildi : 25/05/2017 15:30

(@volkanalkilic)
Gönderiler: 137
Estimable Member
 

Aşağıdaki şekilde denermisiniz;

 

Dim belge As String = "test.txt"
Dim eklenecek As String = "ş ü ö İ ğ ı ç"

Dim Fs As FileStream = New FileStream(belge, FileMode.Create, FileAccess.Write, FileShare.None)
Fs.Close

Dim swUTF8 = New StreamWriter(belge, True, System.Text.Encoding.UTF8)
swUTF8.Write(eklenecek)
swUTF8.Flush()
swUTF8.Close()

 

 
Gönderildi : 27/05/2017 18:09

(@metinbeci)
Gönderiler: 5
Active Member
Konu başlatıcı
 

cevap için teşekkür ederim dediğiniz gibi yapınca utf-8 - BOM Olarak kaydediyor sadece UTF-8 nasıl yapıcam

 
Gönderildi : 28/05/2017 19:53

Paylaş: