gpt4 book ai didi

java - 如何确定字符来源是否来自键盘(读取文件内容时)

转载 作者:行者123 更新时间:2023-12-02 00:18:09 25 4
gpt4 key购买 nike

我正在解析 CSV 文件,有时可能会遇到非法文件,例如 jpegpdf 等...

因此,当我解析文件内容时,我想确定该字符是否合法(来自键盘),例如 a 5 & % ! 等...

但不是这样的字符:�ַ和其他可以在图像pdfs和其他文件中找到的奇怪字符

我不想检查文件的 mime 类型,并且我不想添加多个第三方 jar 来解决此问题,我想通过查看其字符来确定正在解析的文件是否有效

类似于 Character.isLetterOrDigit 的东西吗?可以判断该字符是从键盘输入的字符还是一些奇怪的字符,例如 � ַ

*我还需要能够接受各种语言的字符(不仅仅是英语)所以我想避免像 c <= 32 && c >= 126 那样进行普通字符比较等等...

<小时/>

顺便说一句,总的来说,我正在寻找这个问题 CSV file validation with Java 中描述的问题的答案

最佳答案

如果您正在寻找内置函数,我不知道有哪个。但是,您可以查看 char的 ascii 值并根据您的喜好进行过滤。查看this ASCII table的值。

例如,您可以说,如果 ascii 值为 <= 32 && >= 126 ,你不会接受;否则,您将:

public boolean isValid(char c) {
if (c <= 32 && c >= 126) {
return false;
} else {
return true;
}
}
<小时/>

如果对整条线进行操作/String ,您也许可以使用它来去除有效字符并确定是否保留任何无效字符:

public boolean isValid(String s) {
return s.replaceAll("\\w|\\p{Punct}", "").length() == 0;
}

关于java - 如何确定字符来源是否来自键盘(读取文件内容时),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11548502/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com