輸入文件:如何用Java讀取輸入文件
1/2/3/5/6
我想存儲數字1 2 3 4 5 6
我的代碼:
Scanner in= new Scanner(new FileReader("v.txt"));
in.split();
是不是有這樣我怎麼能存儲這些值?
輸入文件:如何用Java讀取輸入文件
1/2/3/5/6
我想存儲數字1 2 3 4 5 6
我的代碼:
Scanner in= new Scanner(new FileReader("v.txt"));
in.split();
是不是有這樣我怎麼能存儲這些值?
。有一個最酷的把戲約Scanner
,你可以讀取整個文件成一個字符串。
String text = new Scanner(new FileReader("v.txt")).useDelimiter("\\A").next();
。您可以使用/
分隔符分割字符串
。你可以通過字符串逐個將每個String
轉換爲Integer
號碼。
a. Integer.valueOf() which return Integer
b. Integer.parseInt() which return int
在Java 8
代碼:
String text = new Scanner(new FileReader("1.txt")).useDelimiter("\\A").next();
String[] sp = text.split("/");
List<Integer> listIntegers = Stream.of(sp)
.map(s -> Integer.valueOf(s))
.collect(Collectors.toList());
listIntegers.forEach(i -> System.out.print(" " + i));
輸出:
1 2 3 4 5 6
所需進口:
import java.util.stream.Collectors;
import java.util.stream.Stream;
@ user4192725一個小錯誤。 valueOf返回Integer和parseInt返回int請參閱我的更新 – 2014-10-29 17:02:07
首先閱讀全文的文字。
String line="";
while(in.hasNextLine(){
line=in.nextLine();
}
然後通過/
String[] arr=line.split("/");
如果你想獲得這些爲int
值分割線,可以使用Integer.parseInt()
從String
得到int
。
嘗試followind代碼:
Scanner in= new Scanner(new FileReader("v.txt"));
String tok[];
while(in.hasNextLine(){
tok=in.nextLine().spilt("/");
}
輸入:
1/2/3/5/6
輸出:
1
2
3
5
6
更多關於這些操作登陸this鏈接。
不必要的轉義。你可以使用'split(「/」)'而不會轉義。 – 2014-10-29 05:54:28
,如果你使用的Java 7:
List<String> lines = Files.readAllLines(Paths.get("path to file"), StandardCharsets.UTF_8);
這只是問路的一半。 – wumpz 2014-10-29 05:59:19
你會在問這個問題之前用它搜索它! – Chella 2014-10-29 05:53:58
@ user4192725希望我的回答可以幫助你 – 2014-10-29 06:13:59
我看到很多這種性質的問題,其中OP提出一個基本問題然後消失。 – Madusudanan 2014-10-29 06:29:27