【问题标题】:How would fill this array in this form?如何以这种形式填写这个数组?
【发布时间】:2017-02-16 01:57:04
【问题描述】:

我希望我的程序以某种方式输出它,我怎样才能做到这一点?到目前为止,我的代码给了我错误的东西。

这是我的.txt 文件:

ABCDEFGHIJKLMNOPQRSTUVWXYZOOOOOOO

这是我的java 文件:

import java.io.*;

public class EncryptDecrypt {

    public static void encrypt() throws IOException {
        BufferedReader in = new BufferedReader(new FileReader("cryptographyTextFile.txt"));
        String line = in.readLine();

        char[][] table = new char[6][5];

        // fill array
        for(int i = 0; i < 6; i++) {
            for(int j = 0; j < 5; j++) {
                while(table[i][j] < 6) {
                    table[i][j] = line.charAt(j);
                }
            }
        }

        // print array
        for(int i = 0; i < 6; i++) {
            for(int j = 0; j < 5; j++) {
                System.out.println(table[i][j] + " ");
            }
            System.out.println();
        }
    }

    public static void main(String[] args) throws IOException {
        encrypt();
    }
}

我将如何像这样打印这个.txt 文件:

ABCDE
GHIJK
MNOPQ
STUVW
XYZOO
OOOOO

【问题讨论】:

    标签: java algorithm for-loop encryption


    【解决方案1】:

    几个问题

        String line = "ABCDEFGHIJKLMNOPQRSTUVWXYZOOOOOOO";
    
        char[][] table = new char[6][5];
        int counter = 0;
        // fill array
        for(int i = 0; i < 6; i++) {
            for(int j = 0; j < 5; j++) {
                table[i][j] = line.charAt(counter++);  // need to increment through the String
            }
        }
    
        // print array
        for(int i = 0; i < 6; i++) {
            for(int j = 0; j < 5; j++) {
                System.out.print(table[i][j] + " ");  // not println
            }
            System.out.println();
        }
    

    输出

    A B C D E 
    F G H I J 
    K L M N O 
    P Q R S T 
    U V W X Y 
    Z O O O O 
    

    虽然更可扩展的方式是link

        String line = "ABCDEFGHIJKLMNOPQRSTUVWXYZOOOOOOO";
        String lines [] = line.split("(?<=\\G.....)");
        for (String l : lines) {
            System.out.println(l);
        }
    

    【讨论】:

    • 为什么我不能直接从.txt 文件中得到它?
    • 可以继续从文件中获取。我有一个字符串,以便我可以提供一个可行的最小、完整且可验证的示例
    猜你喜欢
    • 1970-01-01
    • 2018-09-02
    • 1970-01-01
    • 1970-01-01
    • 2017-12-26
    • 1970-01-01
    • 2017-06-20
    • 2015-12-08
    • 1970-01-01
    相关资源
    最近更新 更多