-1
私はこのコードを持っている:BufferedReader.readLine()。split( "")javaの使い方?
public static void opticFiberApplication() throws IOException {
int v1;
File file = new File("src/Arcos.txt");
FileReader fr = new FileReader(file);
BufferedReader br = new BufferedReader(fr);
int capacity = Integer.parseInt(br.readLine());
Graph application = new Graph(capacity);
while ((v1 = Character.getNumericValue(br.read())) != -1) {
int v2 = Character.getNumericValue(br.read());
int cost = Character.getNumericValue(br.read());
if (application.getVertex(v1) == null) application.addVertex(v1);
if (application.getVertex(v2) == null) application.addVertex(v2);
application.addEdge(v1, v2, cost);
}
printGraph(application);
prim(application);
}
最初の行は、容量と第1頂点およびエッジのコストである
5
0110025032143238
アルコス.txtファイルを。
私はArcos.txtはあなたの助けのために、この
5
0 1 10 0 2 5 0 3 2 1 4 3 2 3 8
おかげのように読み取ることができるようにはBufferedReader.readLine()。スプリット(」「)を使用する方法を知りたいです。
あなたのプログラムは、結果が '0 1 10 0' ...または' 0 1 1 0 0'であるべきかどうかをどのように判断するでしょうか?テキストファイルの書式を別にする必要があるようです。 – nhouser9
これはシーケンスです。最初の2つの数字はv1とv2で、3番目の数字は頂点をつなぐエッジのコストです –
@SantiagoAmbrosetti問題は、文字列の数字を '01100 ...のように区別することはできません'もし1桁以上の数字があるならば。 – QBrute