2010-10-24 60 views
0

標題基本上都是有的吧。我有一個文件對象的數組...文件[] to字符串[]

File[] myFiles = myDirectory.listFiles(); 

我想將它轉換爲一個字符串數組。 (字符串[])

+3

如果該字符串包含文件名或內容?假設內容,文件都保證只包含文本(沒有二進制的東西)? – 2010-10-24 00:41:32

+0

如何將'File'轉換爲'String'? – 2010-10-24 00:45:36

+0

如果您在問題中提供更多細節,人們將能夠更有效地幫助您。當有多種解釋問題的方式時,僅僅說「標題基本上都存在太多」是不夠的。 – I82Much 2010-10-24 00:58:42

回答

4

假設這是你想要的文件路徑,只需要創建一個同樣大小的字符串數組,並通過數組迭代獲取文件路徑,並把他們的字符串數組:

String[] myStrings = new String[myFiles.length()]; 
for(int i = 0; i < myFiles.length(); i++) 
{ 
    myStrings[i] = myFiles[i].getPath(); 
} 

相同的文件名稱或其他,只需調用你想要的字符串的方法即可。我有一段時間沒有寫Java,所以語法可能稍微偏離了一點,但是這應該給你一個想法。

+0

對不起,我沒有提到文件路徑是我想要的。這工作雖然!謝謝! – 2010-10-24 01:25:08

3

假設你想要的文件的名稱,只是用

String[] myFileNames = myDirectory.list(); 

它做同樣的事情listFiles但而不是返回文件對象它返回一個字符串[]的文件/目錄名。

0

如果你正在尋找獲得文件的內容作爲字符串(這可能是一個非常糟糕的主意,如果你有巨大的文件),則可以使用代碼片段來讀取文件爲一個字符串:http://snippets.dzone.com/posts/show/1335

然後結合Travis的答案,看看如何遍歷文件,調用函數,並將文件的內容保存爲字符串。

1

FWIW這裏是Scala的方式做到這一點:

val myStrings = myFiles.map(_.getPath)