Hello.
Дано: в текстовом файле посреди строки встречается nul, байт=0.
Понятно, что такого быть не должно, это был какой-то глюк программы, создавшей текстовой файл.
Редактор обращается с этим нулём корректно. Отображает его как пустое место, как пробел. При записи файла после редактирования - сохраняет всё правильно.
А вот при копировании выделенного фрагмента в буфер - ошибается.
Far2 b1807 копирует в буфер только до этого нулевого байта.
Far3 b4040 урезает, укорачивает только строку, в которой был этот nul, следующие строки в порядке.
Понятно, ASCIIZ-строки это наше всё.
Большая просьба к авторам: подправьте, пожалуйста.
Если с обработкой такой "неправильной" текстовой строки, строки в нулем в середине, возникают трудности, то пусть он - Фар - хотя бы предупреждает. Как, например, сейчас Фар предупреждает о невозможности сохранить какие-либо символы в принятой кодировке.
ASCII(0) в тексте
-
- Posts: 43
- Joined: Wed 22 Apr, 2009 02:38
- Has thanked: 4 times
- John Doe
- Бюрократ
- Posts: 13860
- Joined: Wed 27 Apr, 2005 20:42
- Has thanked: 74 times
- Been thanked: 428 times
- Contact:
ASCII(0) в тексте
Вертикальные блоки как-то храним в системном, можно с нулём аналогично: в текст пойдёт строка с вырезанным нулём, а в приватном фрормате фар сам себе хозяин.
-
- Posts: 43
- Joined: Wed 22 Apr, 2009 02:38
- Has thanked: 4 times
ASCII(0) в тексте
Если воспользоваться другим редактором, я проверил на NP++, то через буфер копируется полностью.
Значит затык не в самом буфере.
Да по фигу. Если это ограничение сложно обойти, то предупреждение зело будет полезно.
В моем случае это был здоровенный текстовой файл. На 13 мегабайт. Который мне нужно было быстренько перекинуть из 866 в 1251.
Если б не последующий анализатор этого текста, то я бы и не заметил потерю части записей.
--Have a nice day
\\Csp
\\Csp
- John Doe
- Бюрократ
- Posts: 13860
- Joined: Wed 27 Apr, 2005 20:42
- Has thanked: 74 times
- Been thanked: 428 times
- Contact:
ASCII(0) в тексте
Какой-то у вас другой NP++.
У меня заменяется на пробелы.
Update
Нашёл в глубинах меню команды
Code: Select all
Copy Binary Content
Cut Binary Content
Paste Binary Content
При этом в стандартных форматах действительно присутствуют нули, и вставить их куда-либо стандартными средствами нельзя.
(зря они так сделали, лучше бы в своём формате хранили полную бинарную копию с нулями, а в стандартных пробелы для совместимости)
- HaRT
- Moderator
- Posts: 10866
- Joined: Tue 30 Aug, 2005 17:21
- Has thanked: 221 times
- Been thanked: 358 times
ASCII(0) в тексте
Он и не равен, но он по крайней мере не меньше — т.е. технически возможно вытянуть из буфера все данные, если пользователь попросил, а там уж пусть сам разбирается.
Фар есть инструмент, а не нянька. © 2009 DrKnS
-
- Posts: 37
- Joined: Thu 02 Jul, 2015 22:11
- Has thanked: 4 times
- Been thanked: 1 time
Вы, парни, используете null-terminated strings в редакторе?
Невозможно скопировать в клипбоард и вставить бинарные данные редактируемого файла, если в них есть char(0).
-
- Posts: 6839
- Joined: Thu 23 Mar, 2006 21:36
- Location: Israel
- Has thanked: 41 times
- Been thanked: 530 times