|
Вернулся
1748 / 644 / 45
Регистрация: 10.09.2021
Сообщений: 2,786
|
|
Как правильно открыть TXT файл для чтения, например чтобы запихнуть в TextBox или просто загрузить в массив строк17.09.2023, 18:23. Показов 3365. Ответов 82
Метки нет (Все метки)
Я ещё раньше не занимался этим вопросом с помощью API-функций, так как всегда работал с помощью стандартных методов VB6. А теперь, поняв фундаментальный недостаток VB6-метода (отсутствие поддержки юникода в именах файлов), я хочу научиться открывать/загружать стандартный текстовый файл с помощью API.
Итак, за это отвечает у нас функция ReadFile, но уважаемый The Trick, я посмотрел, загружает файлы каким-то странным, другим способом, через функции CreateFileMapping и MapViewOfFile, я если честно в этом ничего не понимаю. Смотрел описание этих функций так толком и не понял зачем их использовать вместо стандартного ReadFile.
0
|
|
| 17.09.2023, 18:23 | |
|
Ответы с готовыми решениями:
82
GDI+ как освободить файл или открыть только для чтения Как открыть доступ для чтения файла 'output.txt'? Как поток чтения (или записи) запихнуть в класс? |
|
Вернулся
1748 / 644 / 45
Регистрация: 10.09.2021
Сообщений: 2,786
|
|
| 17.09.2023, 21:23 [ТС] | |
|
The trick, хорошо, спасибо)))
Добавлено через 1 час 35 минут Осталось только написать код здесь для загрузки TXT файла
0
|
|
|
Модератор
|
||
| 17.09.2023, 21:26 | ||
|
0
|
||
|
Вернулся
1748 / 644 / 45
Регистрация: 10.09.2021
Сообщений: 2,786
|
||
| 17.09.2023, 21:34 [ТС] | ||
|
Осталось только написать код здесь для загрузки TXT файла
Добавлено через 6 минут У тебя может и по лучше бы определило, без BOM!?
0
|
||
|
Вернулся
1748 / 644 / 45
Регистрация: 10.09.2021
Сообщений: 2,786
|
|
| 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
|
||||||
|
Вернулся
1748 / 644 / 45
Регистрация: 10.09.2021
Сообщений: 2,786
|
|||||||||||
| 18.09.2023, 13:20 [ТС] | |||||||||||
|
testuser2, да, так работает, вместе с записью BOM получается! и кода кстати гораздо меньше:
Сейчас ещё в XP проверим! Добавлено через 5 минут Да, и в икспи работает тоже! Только что проверил! Добавлено через 3 минуты Но я всё равно сейчас пользуюсь кодом на API, я всё же доверяю больше API
0
|
|||||||||||
|
Вернулся
1748 / 644 / 45
Регистрация: 10.09.2021
Сообщений: 2,786
|
|
| 18.09.2023, 13:54 [ТС] | |
|
0
|
|
|
Вернулся
1748 / 644 / 45
Регистрация: 10.09.2021
Сообщений: 2,786
|
|||
| 18.09.2023, 14:26 [ТС] | |||
|
Добавлено через 3 минуты Остаётся только вопрос: на всех ли компьютерах есть ActiveX Data Objects чтобы так смело им пользоваться
0
|
|||
| 18.09.2023, 14:57 | |
|
ADODB это же библа для работы с базами данных. Вот, допустим, тема за 2005 год, по первой ссылке описание создания базы данных с помощью ado/dao (dao более раний вариант). Распространеная вещь.
0
|
|
|
Вернулся
1748 / 644 / 45
Регистрация: 10.09.2021
Сообщений: 2,786
|
||||||
| 20.09.2023, 20:35 [ТС] | ||||||
|
Я наконец-то изобрёл код для загрузки TXT файла в кодировке UTF8
0
|
||||||
|
Вернулся
1748 / 644 / 45
Регистрация: 10.09.2021
Сообщений: 2,786
|
|
| 20.09.2023, 21:59 [ТС] | |
|
The trick, мне тут не критично, в конечном итоге можно просто проверить пустая результатирующая строка или нет
Добавлено через 42 секунды прям каждую-каждую API-функцию проверять не хочу Добавлено через 51 секунду плюс API в том, что программа не падает из-за ошибки, а продолжает дальше себе спокойненько работать :-)
0
|
|
|
Вернулся
1748 / 644 / 45
Регистрация: 10.09.2021
Сообщений: 2,786
|
|
| 20.09.2023, 22:09 [ТС] | |
|
The trick, да может можно и улучшить/оптимизировать этот код, я лишь привёл пример рабочего куска кода, который я сегодня набросал для себя. Больше никто не привёл рабочий кусок кода.
Добавлено через 4 минуты Может можно оптимизировать типа так: Может проще указать будет StrPtr(stringbuffer) + 3 если есть запись BOM, чтобы потом строку не отрывать через MidB я не знаю тут подумать можно Добавлено через 1 минуту В любом случае конечно лучше сразу начинать с четвёртого байта... Добавлено через 35 секунд А два раза ReadFile не хочется как-то и позиционировать чтение типа сначала три байта а потом всё остальное...
0
|
|
|
Вернулся
1748 / 644 / 45
Регистрация: 10.09.2021
Сообщений: 2,786
|
|||||||
| 21.09.2023, 12:42 [ТС] | |||||||
|
The trick, вот переделал как ты просил:
Добавлено через 10 минут Так должно быть чуть быстрее теперь, по идее
2
|
|||||||
|
Вернулся
1748 / 644 / 45
Регистрация: 10.09.2021
Сообщений: 2,786
|
||||||||||||||||||||||
| 21.09.2023, 17:07 [ТС] | ||||||||||||||||||||||
|
Добавлено через 3 минуты testuser2, сам посмотри, если не веришь:
testuser2, ты же сам можешь в этом убедиться ну:
Если люди обычно во всех своих кодах пишут для выделения строки код типа:
Добавлено через 5 минут testuser2, сам убедись:
0
|
||||||||||||||||||||||
| 21.09.2023, 17:07 | |
|
Открыть файл и загрузить содержимое в TextBox Как расшифровать файл dat или просто открыть его и вывести на экран Открыть для записи текстовый файл data.txt и записать в него полученный массив, закрыть файл Как открыть файл для чтения?
Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Алиса нашла кучу ошибок компиляции и запуска в проекте, который без проблем компилировался и запускался)))
anaschu 30.06.2026
Я пока посмеюся, но завтра проверю. А вообще интерсно. Дал алисе файл, в котором точно нет ошибок компиляции и запуска, и попросил их найти. Нашла кучу)))
Критические ошибки, мешающие компиляции и. . .
|
сукцессия 16. Общий обзор, в основном что бы другие ии поняли
anaschu 29.06.2026
# Передаточный документ: модель микоризной сукцессии (для нового чата)
Этот документ предназначен для того, чтобы новый чат Claude мог продолжить
работу без необходимости заново разбираться в. . .
|
сукцессия 15 неявная схема
anaschu 29.06.2026
Алиса
Калибровка параметров симбиотической модели: технический обзор
Содержание:
Введение
Постановка проблемы
Технические аспекты реализации
Процесс внедрения изменений
|
сукцессия 14. Обновленная схема модели
anaschu 28.06.2026
ГЛОБАЛЬНАЯ ОПИСАТЕЛЬНАЯ СПЕЦИФИКАЦИЯ ЭКОСИСТЕМНОЙ МОДЕЛИ «SOIL CHEMISTRY & MYCORRHIZA 2. 0»
https:/ / ibb. co/ NnkGpfMd
Представленная интегрированная схема описывает непрерывную нелинейную. . .
|
|
сукцессия 13. Питон модель трехзонного мицелия, пока что в основном арбускулярного
anaschu 28.06.2026
## Разработка агентной модели микоризной сукцессии: от выявления артефактов к созданию комплексной системы
### Аннотация
Представлено исследование по разработке агентной модели микоризной. . .
|
сукцессия 12. краткий список проверок модели перед запуском.
anaschu 27.06.2026
Скрытые отказы в моделях систем динамики (SD-models) экологических систем: два случая из практики
Контекст
Разбирался прототип модели систем динамики (SD-модели) микоризной сукцессии: пять. . .
|
Сукцессия 11. Проверка орудий перед войной: разработка через тестирование
anaschu 27.06.2026
Как не дать модели соврать самой себе: проверки для симуляции микоризной сукцессии
Введение
Когда вы строите математическую модель живой системы — грибов, растений, почвы — главная опасность. . .
|
10 сукцессия. Питон код войны грибов и растений
anaschu 27.06.2026
import numpy as np
class PlantAgent:
def __init__(self, name, strategy, initial_biomass):
self. name = name
self. strategy = strategy # "greedy" (широколиственные) или. . .
|