垂直十六进制到ASCII Java

时间:2017-05-24 05:23:18

标签: java type-conversion hex ascii

情况:

我有一个GUI,我已经将水平十六进制转换为ASCII ...但现在我想将垂直十六进制转换为ASCII。

有没有人有一些想法我怎么解决这个问题?

我已经把它分开了:

vert.addActionListener(new ActionListener() {
        public void actionPerformed(ActionEvent e) {
            fintext5.setText("");

            String[] test = entertext3.getText().split("\\n");
            for(int i = 0; i<test.length; i++){
                System.out.prinln(test[i]);
            }
         }
    });

水平十六进制代码:

button5.addActionListener(new ActionListener() {
        public void actionPerformed(ActionEvent e) {
            fintext5.setText("");
            String readout = entertext3.getText().replace(" ", "").replace("\n", "");

            StringBuilder output = new StringBuilder("");               
            for (int i = 0; i < readout.length(); i += 2)
            {
                String str = readout.substring(i, i + 2);
                output.append((char) Integer.parseInt(str, 16));
            }
            fintext5.append(output.toString());
        }
    });

垂直六角形示例(41 42 43 44 45 46):

4 4 4
1 2 3
4 4 4
4 5 6

1 个答案:

答案 0 :(得分:0)

你迷路了,我只是给你一个有用的起点:

vert.addActionListener(new ActionListener() { 
    public void actionPerformed(ActionEvent e) {
        ausgabe5.setText(""); 
        String[] test = eingabe3.getText().split("\\n"); 
        StringBuilder output = new StringBuilder();
        for (int i = 0; i < test.length; i += 2) {
            for (int j = 0; j < test[i].length(); j++) {
                String hex = "" + test[i].charAt(j) + test[i + 1].charAt(j);
                output.append((char)Integer.parseInt(hex,16));
            }
        }
        System.out.println(output.toString());
    } 
}); 

请仔细查看并询问您不理解的任何内容。