Страница: 1 |
Страница: 1 |
Вопрос: Помогите новичку записать в файл unicode текст
Добавлено: 30.03.06 16:40
Автор вопроса: Андрей
Мне нужно записывать в файл текстовые сообщения в кодировке Unicode (CP 1200), там где 'A' имеет hex-code
410. Прочитал, что string хранится в VB.NET в кодировке unicode, но вот этот простой код тупо пишет 8-бит вместо 16. Что не так?
Sub Main()
Dim MyString As System.String
Dim ReadString As String
Dim iFr As Integer
iFr = FreeFile()
Console.WriteLine("My test")
ReadString = "test.txt"
FileOpen(iFr, ReadString, OpenMode.Binary)
MyString = "Йопрст"
FilePut(iFr, MyString)
FileClose(1)
End Sub
Пытался добавлять в FilePut параметры, в т.ч. последний из 5 пробовал TRUE, но увы
Ответы
Всего ответов: 6
Номер ответа: 1
Автор ответа:
Neco
ICQ: 247906854
Вопросов: 133
Ответов: 882
Web-сайт:
Профиль | | #1
Добавлено: 31.03.06 04:20
Попробуй через Encoding
Номер ответа: 2
Автор ответа:
Андрей
Вопросов: 3
Ответов: 2
Профиль | | #2
Добавлено: 31.03.06 11:42
Спасибо! Получилось...
 im file As New FileStream("test.txt",FileMode.OpenOrCreate)
 im [unicode] As Encoding = Encoding.Unicode
 im myStr As String = "Йопрст"
 im unicodeBytes As Byte() = [unicode].GetBytes(myStr)
For i As Integer = 0 To unicodeBytes.Length - 1
file.WriteByte(unicodeBytes(i))
Next i
file.Close()
Номер ответа: 3
Автор ответа:
Fever
Вопросов: 60
Ответов: 808
Профиль | | #3
Добавлено: 31.03.06 17:16
Ну вот и пжалста. А в VB6 можно?
Номер ответа: 4
Автор ответа:
Neco
ICQ: 247906854
Вопросов: 133
Ответов: 882
Web-сайт:
Профиль | | #4
Добавлено: 31.03.06 21:00
Там есть StrConv
Номер ответа: 5
Автор ответа:
a-nix
ICQ: 336960222
Вопросов: 2
Ответов: 5
Профиль | | #5
Добавлено: 01.04.06 12:27
Люди добрые: VB6 - Unicode -> обычный
Все перепробовал - без результатов. Помогите...
Номер ответа: 6
Автор ответа:
Sur
ICQ: 1249088
Вопросов: 10
Ответов: 304
Web-сайт:
Профиль | | #6
Добавлено: 03.04.06 18:48
2 a-nix
StrConv точно пробовал?
Debug.Print StrConv("@825B", vbFromUnicode)