Как заменить символ с другим в шестнадцатеричном
Я новый пользователь, использующий мэйнфрейм, у меня есть файл, и мне нужно изменить все точки ". в файле с пробелом, я пытался написать это утверждение по команде
change X'05' X'40' all
после того, как я преобразовал файл в шестнадцатеричный, но это не работает. Как я могу просто изменить все точки с пробелом в файле, пожалуйста?
2 ответа
Точки являются неотображаемыми символами. Вы можете сопоставить их, используя строки изображений в редакторе ISPF (что, я полагаю, вы пытаетесь использовать для редактирования файла?)
Попробуйте команду
change p'.' ' ' all
Часть "p". "Будет соответствовать любому неотображаемому символу и станет пустым.
Ответ Ханса выше наверняка изменит любой не отображаемый символ на пробел. Однако вам нужно убедиться, что вы действительно хотите изменить все не отображаемые символы на пробелы. Включите HEX ON, чтобы посмотреть фактические данные. Затем вы можете сделать F р '.' найти неотображаемый символ (ы) до его изменения. Обзор показывает не отображаемые символы в виде точки. Однако Edit заменит значение атрибутом для целей отображения, и это не позволит вам вводить данные. Вы должны включить режим HEX, чтобы вручную изменить неотображаемое значение, или использовать команду Изменить, как вы пытались. Обычно любое шестнадцатеричное значение от x'00' - x'3F' не отображается. Так что
C P'.' X'40'ВСЕ
будет модифицировать каждое из этих значений в пространство. Это может или не может быть желательным в зависимости от файла.