Гость
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / в кодировке UTF8 можно читать программно текстовый файл? / 10 сообщений из 10, страница 1 из 1
14.05.2016, 23:32
    #39235887
катастрофа
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
в кодировке UTF8 можно читать программно текстовый файл?
здравствуйте, щас пользуюсь кодом
Код: vbnet
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
Sub ReadTextFileLine()
 
Dim a As String
Open ("w:\new 2222.txt") For Input As #1
Do Until EOF(1)
Line Input #1, a
 MsgBox$ a
Loop
Close #1
 
End Sub


пока кракозябры выдаёт месседж в кодировке UTF8, если читать в кодировке ANSI текстовый файл тогда всё ОК, но нужно в кодировке UTF8, как? спасибо
...
Рейтинг: 0 / 0
15.05.2016, 00:29
    #39235898
Shocker.Pro
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
в кодировке UTF8 можно читать программно текстовый файл?
Эндрю, ищи - да обрящешь.
Тема тут была, и даже недавно вроде опять поднималась. Тут или в MSOffice.
...
Рейтинг: 0 / 0
16.05.2016, 20:55
    #39236902
катастрофа
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
в кодировке UTF8 можно читать программно текстовый файл?
Shocker.Pro,
нашёл у экселистов, завтра попробую
А вот функция для чтения текстового файла в заданной кодировке:
Код: vbnet
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
Function LoadTextFromTextFile(ByVal filename$, Optional ByVal encoding$) As String
    ' функция загружает текст в кодировке Charset$ из файла filename$
    On Error Resume Next: Dim txt$
    If Trim(encoding$) = "" Then encoding$ = "windows-1251"
    With CreateObject("ADODB.Stream")
        .Type = 2:
        If Len(encoding$) Then .Charset = encoding$
        .Open
        .LoadFromFile filename$        ' загружаем данные из файла
        LoadTextFromTextFile = .ReadText        ' считываем текст файла
        .Close
    End With
End Function


это мне писать вместо
Код: vbnet
1.
If Trim(encoding$) = "" Then encoding$ = "windows-1251"


писать
Код: vbnet
1.
 If Trim(encoding$) = "" Then encoding$ = "utf-8"


???
...
Рейтинг: 0 / 0
16.05.2016, 21:26
    #39236919
Shocker.Pro
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
в кодировке UTF8 можно читать программно текстовый файл?
это от тебя зависит
совет - как обычно - включить мозг, а не тупо копипастить
...
Рейтинг: 0 / 0
17.05.2016, 10:29
    #39237133
катастрофа
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
в кодировке UTF8 можно читать программно текстовый файл?
Shocker.Pro,
Код: vbnet
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
Option Explicit
 
Sub ReadTextFileLine()
 
    Dim objStream, myTXT, a, Количество_строк, li
    Set objStream = CreateObject("ADODB.Stream")
    objStream.Charset = "utf-8"
    objStream.Open
    objStream.LoadFromFile ("w:\в UTF8.txt")
    myTXT = objStream.ReadText()
    a = Split(myTXT, vbCrLf)
    'Количество_строк = UBound(a) - LBound(a)
    'MsgBox$ Количество_строк
    'MsgBox$ UBound(a)
    'MsgBox$ LBound(a)
    'считает от нуля!!!!!
    For li = LBound(a) To UBound(a)
        MsgBox$ li & vbCrLf & a(li)
    Next li
 
End Sub


почему, то знак ┌ не читает, а знак ┐читает?
это такие знаки в текстовых файлах, которыми таблицы рисуют
...
Рейтинг: 0 / 0
17.05.2016, 11:23
    #39237178
катастрофа
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
в кодировке UTF8 можно читать программно текстовый файл?
то есть знак левый служащий отображением верхнего левого угла таблицы НЕ читает, а служащий правым верхним углом таблицы читает, почему?
...
Рейтинг: 0 / 0
17.05.2016, 11:43
    #39237208
Akina
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
в кодировке UTF8 можно читать программно текстовый файл?
Пример файла выложи - самостоятельно делать лениво, а попробовать не на чем...
...
Рейтинг: 0 / 0
17.05.2016, 11:50
    #39237217
катастрофа
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
в кодировке UTF8 можно читать программно текстовый файл?
Akina, приаттачил
...
Рейтинг: 0 / 0
17.05.2016, 12:31
    #39237270
катастрофа
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
в кодировке UTF8 можно читать программно текстовый файл?
мсгбокс значит не отображает, потому как если изменить цикл на

Код: vbnet
1.
2.
3.
4.
5.
For li = LBound(a) To UBound(a)
        MsgBox$ Len(a(li))
        MsgBox$ li & vbCrLf & a(li)
        Selection.TypeText Text:=a(li)
    Next li


то в файле всё правильно отображает
...
Рейтинг: 0 / 0
17.05.2016, 14:43
    #39237452
катастрофа
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
в кодировке UTF8 можно читать программно текстовый файл?
а скажите, если читать текстовый файл
AscW(любой_знак) всегда будет = 9474
Asc(любой_знак) всегда будет = 166
???
...
Рейтинг: 0 / 0
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / в кодировке UTF8 можно читать программно текстовый файл? / 10 сообщений из 10, страница 1 из 1
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]