2012-07-17 396 views
6

我需要編寫Java代碼才能在Unix環境中工作以進行文件操作。由於我需要處理文件,我如何在Java中以Unix格式創建和保存文件?在java中創建文本文件並保存爲unix格式

+0

此鏈接可以給你一個簡單的理念: http://vim.wikia.com/wiki/File_format – Piyush 2012-07-17 21:04:59

回答

4

的 「Unix格式」 只是表示line endings\n代替\n\r(Windows)或\r(OSX之前的Mac)的文本文件。

這是基本的想法;寫每一行,其次是明確的\n(而不是.newLine()這是與平臺相關的):

public static void writeText(String[] text){ 
    Path file = Paths.get("/tmp/filename"); 
    try (BufferedWriter bw = Files.newBufferedWriter(file, StandardCharsets.UTF_8)) { 
    for(String s : text){ 
     bw.write(s); 
     bw.write("\n"); 
    } 
    } catch (IOException e) { 
    System.err.println("Failed to write to "+file); 
    } 
} 
+3

不是使用'\ n'或'\ r \ n',而是使用'System.getProperty(「line.separator」)'。 – 2012-07-17 21:24:29

+0

感謝dimo414和Eng.Fouad。上面的例子幫了很大忙。 – Piyush 2012-07-17 21:30:21

+2

@ Eng.Fouad一般來說,這是真的,但如果你想要一個Unix格式的文件,不管你在哪個操作系統上,你都會明確地使用'\ n'。獲取系統的行分隔符意味着您將得到不同的行爲,具體取決於您運行該程序的操作系統。 – dimo414 2012-07-17 22:19:23

相關問題