我想用String數組寫一個文件。我已經編寫了在最後添加額外分隔符的代碼。創建逗號分隔文件 - 尾隨分隔符
for(String data : fieldsData){
data="\""+data+"\"";
writer.write(data);
writer.write(",");
}
writer.newLine();
例如,對於該輸入
A,B,C
我正在此輸出
「一」, 「B」,」 c「,
我想用String數組寫一個文件。我已經編寫了在最後添加額外分隔符的代碼。創建逗號分隔文件 - 尾隨分隔符
for(String data : fieldsData){
data="\""+data+"\"";
writer.write(data);
writer.write(",");
}
writer.newLine();
例如,對於該輸入
A,B,C
我正在此輸出
「一」, 「B」,」 c「,
您需要使用一個基本的for循環,以確定最後的指數出現
for (int i = 0; i < fieldsData.length - 1; i++) {
writer.write("\"" + fieldsData[i] + "\",");
}
writer.write("\"" + fieldsData[fieldsData.length - 1] + "\"");
爲什麼要使用if語句。你可以在For上取長度爲1,然後在For之外寫一個「out」。沒有? –
後,您可以使用正則表達式通過檢查逗號後的空格替換最後一個逗號,然後用空替換串。是這樣的:
for(String data : fieldsData){
data="\""+data+"\""+",";
}
data.replaceAll(",\\s", "");
writer.write(data)
的Java 8路:
writer.write(Arrays.stream(fieldsData)
.map(s -> "\"" + s + "\"")
.collect(Collectors.joining(",")));
你的問題是有些含糊 - 所以你想要的報價,但不是最後的','? – Reimeus
請澄清你的問題。你的'a,b,c'輸入需要什麼樣的輸出? – Shoshi
所需輸出---「a」,「b」,「c」 – iKing