|
Вернулся
1782 / 677 / 46
Регистрация: 10.09.2021
Сообщений: 2,840
|
|
Как правильно открыть TXT файл для чтения, например чтобы запихнуть в TextBox или просто загрузить в массив строк17.09.2023, 18:23. Показов 3932. Ответов 82
Метки нет (Все метки)
Я ещё раньше не занимался этим вопросом с помощью API-функций, так как всегда работал с помощью стандартных методов VB6. А теперь, поняв фундаментальный недостаток VB6-метода (отсутствие поддержки юникода в именах файлов), я хочу научиться открывать/загружать стандартный текстовый файл с помощью API.
Итак, за это отвечает у нас функция ReadFile, но уважаемый The Trick, я посмотрел, загружает файлы каким-то странным, другим способом, через функции CreateFileMapping и MapViewOfFile, я если честно в этом ничего не понимаю. Смотрел описание этих функций так толком и не понял зачем их использовать вместо стандартного ReadFile.
0
|
|
| 17.09.2023, 18:23 | |
|
Ответы с готовыми решениями:
82
GDI+ как освободить файл или открыть только для чтения Как открыть доступ для чтения файла 'output.txt'? Как поток чтения (или записи) запихнуть в класс? |
|
Вернулся
1782 / 677 / 46
Регистрация: 10.09.2021
Сообщений: 2,840
|
|
| 17.09.2023, 21:23 [ТС] | |
|
The trick, хорошо, спасибо)))
Добавлено через 1 час 35 минут Осталось только написать код здесь для загрузки TXT файла
0
|
|
|
Модератор
|
||
| 17.09.2023, 21:26 | ||
|
0
|
||
|
Вернулся
1782 / 677 / 46
Регистрация: 10.09.2021
Сообщений: 2,840
|
||
| 17.09.2023, 21:34 [ТС] | ||
|
Осталось только написать код здесь для загрузки TXT файла
Добавлено через 6 минут У тебя может и по лучше бы определило, без BOM!?
0
|
||
|
Вернулся
1782 / 677 / 46
Регистрация: 10.09.2021
Сообщений: 2,840
|
|
| 18.09.2023, 10:53 [ТС] | |
|
testuser2, и чё? это работает что ли?
Добавлено через 7 минут testuser2, попробовал твой код, написал: WriteToTextFileUTF8 "C:\123.txt", "12345р" ну вродебы всё хорошо, но файл с сохраняется без записи BOM поэтому ни блокнот ни что либо ещё не понимает русский символ "р" Добавлено через 2 минуты но скриптик интересный очень конечно надо бы его ещё в XP проверить Добавлено через 51 секунду хотя вообще я приверженец API так как WMI не всегда работает
0
|
|
| 18.09.2023, 11:27 | ||||||
|
HackerVlad, попробуй так
1
|
||||||
|
Вернулся
1782 / 677 / 46
Регистрация: 10.09.2021
Сообщений: 2,840
|
|||||||||||
| 18.09.2023, 13:20 [ТС] | |||||||||||
|
testuser2, да, так работает, вместе с записью BOM получается! и кода кстати гораздо меньше:
Сейчас ещё в XP проверим! Добавлено через 5 минут Да, и в икспи работает тоже! Только что проверил! Добавлено через 3 минуты Но я всё равно сейчас пользуюсь кодом на API, я всё же доверяю больше API
0
|
|||||||||||
|
Вернулся
1782 / 677 / 46
Регистрация: 10.09.2021
Сообщений: 2,840
|
|
| 18.09.2023, 13:54 [ТС] | |
|
0
|
|
|
Вернулся
1782 / 677 / 46
Регистрация: 10.09.2021
Сообщений: 2,840
|
|||
| 18.09.2023, 14:26 [ТС] | |||
|
Добавлено через 3 минуты Остаётся только вопрос: на всех ли компьютерах есть ActiveX Data Objects чтобы так смело им пользоваться
0
|
|||
| 18.09.2023, 14:57 | |
|
ADODB это же библа для работы с базами данных. Вот, допустим, тема за 2005 год, по первой ссылке описание создания базы данных с помощью ado/dao (dao более раний вариант). Распространеная вещь.
0
|
|
|
Вернулся
1782 / 677 / 46
Регистрация: 10.09.2021
Сообщений: 2,840
|
||||||
| 20.09.2023, 20:35 [ТС] | ||||||
|
Я наконец-то изобрёл код для загрузки TXT файла в кодировке UTF8
0
|
||||||
|
Вернулся
1782 / 677 / 46
Регистрация: 10.09.2021
Сообщений: 2,840
|
|
| 20.09.2023, 21:59 [ТС] | |
|
The trick, мне тут не критично, в конечном итоге можно просто проверить пустая результатирующая строка или нет
Добавлено через 42 секунды прям каждую-каждую API-функцию проверять не хочу Добавлено через 51 секунду плюс API в том, что программа не падает из-за ошибки, а продолжает дальше себе спокойненько работать :-)
0
|
|
|
Вернулся
1782 / 677 / 46
Регистрация: 10.09.2021
Сообщений: 2,840
|
|
| 20.09.2023, 22:09 [ТС] | |
|
The trick, да может можно и улучшить/оптимизировать этот код, я лишь привёл пример рабочего куска кода, который я сегодня набросал для себя. Больше никто не привёл рабочий кусок кода.
Добавлено через 4 минуты Может можно оптимизировать типа так: Может проще указать будет StrPtr(stringbuffer) + 3 если есть запись BOM, чтобы потом строку не отрывать через MidB я не знаю тут подумать можно Добавлено через 1 минуту В любом случае конечно лучше сразу начинать с четвёртого байта... Добавлено через 35 секунд А два раза ReadFile не хочется как-то и позиционировать чтение типа сначала три байта а потом всё остальное...
0
|
|
|
Вернулся
1782 / 677 / 46
Регистрация: 10.09.2021
Сообщений: 2,840
|
|||||||
| 21.09.2023, 12:42 [ТС] | |||||||
|
The trick, вот переделал как ты просил:
Добавлено через 10 минут Так должно быть чуть быстрее теперь, по идее
2
|
|||||||
|
Вернулся
1782 / 677 / 46
Регистрация: 10.09.2021
Сообщений: 2,840
|
||||||||||||||||||||||
| 21.09.2023, 17:07 [ТС] | ||||||||||||||||||||||
|
Добавлено через 3 минуты testuser2, сам посмотри, если не веришь:
testuser2, ты же сам можешь в этом убедиться ну:
Если люди обычно во всех своих кодах пишут для выделения строки код типа:
Добавлено через 5 минут testuser2, сам убедись:
0
|
||||||||||||||||||||||
| 21.09.2023, 17:07 | |
|
Открыть файл и загрузить содержимое в TextBox Как расшифровать файл dat или просто открыть его и вывести на экран Открыть для записи текстовый файл data.txt и записать в него полученный массив, закрыть файл Как открыть файл для чтения?
Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Часы с термометром и праздничным календарем
yariko 12.11.2026
Сегодня мы рассмотрим как можно сделать отличные многофункциональные часы.
Итак, поставим конкретную задачу: разработать часы с календарем, двумя термодатчиками, выводом поздравительных сообщений. . .
|
Транслитерация текста с кириллицы на латиницу (вариант №1)
Maks 11.11.2026
Решил облегчить жизнь себе и коллегам админам при создании электронных почтовых ящиков для пользователей, в результате написал обработку "Транслитерация текста" с кириллицы на латиницу, а в ней. . .
|
Книги по геймдизайну, левел-дизайну, игровым механикам и проектированию игрового опыта
8Observer8 08.11.2026
Содержание блога | English Version
1. 2003 - 06 - Designing Virtual Worlds (1st Edition)
Автор: Richard A. Bartle | Объем: 768 стр.
Ссылки: Amazon
. . .
|
Родители токсичные абьюзеры по отношению к своим детям ругают их оскорбляют не любят
zorxor 08.11.2026
Жить в атмосфере постоянных оскорблений, критики и холодности со стороны родителей — это тяжелое и болезненное испытание, которое оставляет глубокие эмоциональные раны. Токсичное и абьюзивное. . .
|
|
Как только я захожу к себе в свою комнату я сразу же с себя снимаю свои трусы. Ответ от Джемени ИИ.
zorxor 08.11.2026
Джемени, как только я захожу к себе в свою комнату я сразу же с себя снимаю свои трусы.
Многие люди, возвращаясь домой, сразу переодеваются в максимально свободную одежду или вовсе предпочитают. . .
|
Паттерн очереди действий/команд (Action / Command Queue). Система очереди действий и кат-сцен с SDL3 Callbacks, cglm и OpenGL
8Observer8 07.11.2026
Содержание блога | English Version
Руководство для начинающих по реализации паттерна очереди действий/ команд (Action / Command Queue) на C++ (C++20) с использованием официального SDL3 Callbacks. . .
|
Проверка полного ФИО в типовом справочнике
Maks 07.11.2026
Решение реализовано в конфигурации КА2, на примере справочника "КонтактныеЛицаПартнеров".
Задача:
Запрет инициалов.
Не допускаеть использование сокращений вида "И. И. ", "И. И. ", "И И" и. . .
|
Про "Windows must die!"
kumehtar 04.11.2026
Знаете, чет накатило. . . .
Когда-то это было почти боевым кличем: мол, нормальный человек сидит на DOS, OS/ 2 или Linux, а вот это вот - Must Die. А теперь человек произносит «мастдай» с усмешкой - и. . .
|