Как конвертировать файлы из Dos в Unix
У меня есть несколько файлов, которые я хочу конвертировать из Dos в Unix. Есть ли API или способ, который поможет мне это сделать?
5 ответов
есть инструменты linux, которые могут это сделать (dos2unix
например).
в Java это можно сделать с помощью String.replaceAll()
.
DOS использует \r\n
для завершения строки, в то время как UNIX использует один \n
.
String unixText = windowsText.replaceAll("\r\n", "\n"); // DOS2UNIX
поэтому нет, API не существует. Да, это чертовски легко.
просто альтернативный способ (чем описанный parasietje) с помощью dox2unix. Скажем, все файлы dos находятся в одной папке
Runtime.getRuntime().exec("dos2unix /path/to/dos/files/*");
большинство дистрибутивов unix / linux имеют утилиту с именем unix2dos
и dos2unix
команды.
изменить:
Просто скопируйте файл на unix-машину и запустите dos2unix *
.
вы также можете найти эту утилиту для Windows, и сделать то же самое.
в Linux/Unix есть утилита/команда под названием dos2unix
это поможет вам конвертировать файлы из dos в формат unix. Для установки просто введите console (вам могут понадобиться привилегии root)
yum install dos2unix
преобразование вы должны использовать команду dos2unix с последующим именем. Например
[aniket@localhost ~]$ dos2unix sample.txt
dos2unix: converting file sample.txt to UNIX format ...
для всех файлов в каталоге, вы можете просто использовать
dos2unix *
String unixText = windowsText.replaceAll("\r\n", "\n"); // DOS2UNI
вышеуказанная строка должна удалить все \r, но по какой-то причине она также удаляет \n, поэтому мне пришлось добавить ее обратно при печати unixText в файл: unixText + "\n"