2016-11-22 4 views
0

このメソッドを使用して、テキストファイルからデータをいくつか出力し、テーブル形式に出力しようとしています。 最初のパラメータは単に中央の列にある必要がある単語を要求し、colSizeは列の幅を設定する必要があります。出力をテーブルに変換する

public String printTable(String midWord, int colSize) { 
    String col1 = ""; 
    String col2 = midWord; 
    String col3 = ""; 

    System.out.printf("%-15s %15s %n", col1, midWord, col3); 
    //System.out.format ("%-15s %15s %n", col1, midWord, col3); 

    return null; 
} 

私はprintfSystem.out.formatの両方を使用して試してみましたが、彼らは両方のように私はそれらについて確認していないと同じことをやっているようです。

誰も私がこの方法で紛失しているものを説明することはできますか?

+0

ファイルの内容とファイルを解析しているコードを表示できますか? – vlatkozelka

+0

何が問題なのですか? 'colSize'はどこで使用されていますか? –

+0

@ LaneSurface私はそれを使用する方法がわかりませんでした...☹️ – RS786

答えて

0

あなたの質問は明確ではありません:行が3つの列で構成されていることを知っていますか(テキスト - )ファイルを読み込もうとしていますか? 1時間に

  1. すべての行とスキャナを使用してライン
  2. のために彼らにラインを印刷し、別の

    import java.io.File; 
    import java.io.FileNotFoundException; 
    import java.io.IOException; 
    import java.nio.file.Files; 
    import java.nio.file.Paths; 
    import java.util.List; 
    import java.util.Scanner; 
    import java.util.stream.Stream; 
    
    public class TestClass { 
        private static final String fileName = "I:/myFile.txt";  
        public static void main(String[] args) { 
        Stream<String> lines; 
        Scanner scanner; 
        try { 
         lines = Files.lines(Paths.get(fileName)); 
         lines.toArray(String[]::new); 
         // read all lines 
         List<String> readAllLines = Files.readAllLines(Paths.get(fileName)); 
         // print each of the lines 
         readAllLines.forEach(s -> System.out.println(s)); 
    
         // print a word each time 
         File file = new File(fileName); 
         scanner = new Scanner(file); 
         while (scanner.hasNext()) { 
          System.out.println(scanner.next()); 
         } 
    
        } catch (IOException e) { 
         // TODO Auto-generated catch block 
         e.printStackTrace(); 
        } 
        } 
    } 
    
後に一つの単語を印刷:次のスニペットで は、そのファイルを読み込むことが可能です

読んだ行に3行の "列"を入れて問題が発生した場合は、これを知らせてください。私は助けようとします。

+0

まあ、私はテキストファイルからいくつかのデータを取得しようとしているし、コンソールに印刷しています。しかし、私はそれが3つの列になるように書式を設定したいと思っていました。中央の列は具体的には1つの単語が中央に表示されます。 – RS786

+0

ここhttp://alvinalexander.com/programming/printf-format-cheat-sheetあなたの出力をフォーマットするために必要なもの: – Meziane

関連する問題