java - 如何在JAVA中读取终端给出的光标位置(ANSI设备状态报告)
问题描述
import java.util.Scanner;
import java.util.regex.Pattern;
public class dsr {
final static String ESC = "\u001b";
final static String ANSI_PREFIX = ESC + "[";
final static String ANSI_DSR = ANSI_PREFIX + "6n";
public static void main(String[] args) {
Scanner scan = new Scanner(System.in);
System.out.println("1234567" + ANSI_DSR);
System.out.println("@" + scan.next(Pattern.compile(".*")));
}
}
此代码尝试使用扫描仪从终端读取返回,但返回未被捕获并直接显示。扫描仪等待键盘输入。如何检索返回值^[[5;8R
解决方案
推荐阅读
- c# - 双重分组以有效地查找重复项
- java - 检查耳机是否连接到不同的 API 级别
- php - 您好,目前我正在尝试隐藏名为“游戏”的子文件夹的 php 扩展名
- c++ - 构建 Boost 与包含标题
- python - python函数不返回任何东西
- java - 我无法在 Java 中访问另一个类的变量值
- android - GdxPay“onPurchaseHistoryResponse 失败,responseCode -1”
- xml - 如何将“sap.suite.ui.commons.statusindicator.StatusIndicator”添加到页面?
- php - 消息:试图在 php 错误中获取非对象的属性
- .htaccess - 如果没有字符串,则重定向 url