zoukankan      html  css  js  c++  java
  • java 程序从linux 上接收不可见字符

    近期在写一个简单的小java程序,希望在运行java 程序时,从shell 中接收参数,并且参数的内容为不可见字符。

    开始时还觉得可以使用""之类的转义符来写,后来发现java程序从shell中接收参数时,根本就没有转义符这一说,直接接收到的就是string。

    例如执行以下命令

    java -jar test.jar

    如果java程序是将输入的信息打印屏幕,那么打印的内容将是" ",而不是"换行"。

    从网上找了很多资料,都没有发现能够解决shell 传入不可见字符参数的解决方法,故用逆向思维想了:"是否可以用ascii 输入代替不可见字符,然后在java中转义ascii的十进制内容"。

    沿着这个思路在网上找资料,皇天不负有心人,java中对ascii 十进制内容转义还是很简单的,下面贴一下代码

    public class Test {
        public static void main (String[] args) {
            int t = Integer.parseInt(args[0]);
            System.out.println("**" + (char)t  + "**");
        }    
    }

    如果执行  java -jar test.jar 65 , 输出内容将是"A"

    如果执行 java -jar test.jar 10 ,输出内容将是" "(换行)

      

  • 相关阅读:
    网络编程
    常用模块补充
    面向对象进阶
    面向对象 --- 封装
    面向对象 三大特性--多态
    python 面向对象三大特性
    python 面向对象
    python 模块与包
    如何在Word的方框中打对号
    关于VS 2013连接Microsoft Access 2013的相关问题
  • 原文地址:https://www.cnblogs.com/chenfool/p/6650808.html
Copyright © 2011-2022 走看看