`
- 浏览:
62214 次
- 性别:
- 来自:
杭州
-
/**
* 对文件读入时进行特殊字符过滤
* @param inFile 读入的文件
* @param outFile 输出的文件
* @author zhang
*/
public void FileFilter(String inFile, String outFile) {
try {
FileInputStream fis = new FileInputStream(inFile);
FileOutputStream fos = new FileOutputStream(outFile);
byte [] b = new byte [1024];
int i;
try {
while ((i = fis.read(b)) != -1) {
String str = new String(b);
char [] ct = str.toCharArray();
StringBuffer stemp = new StringBuffer();
/**
* 使用正则表达式进行过滤,只允许英文字母、数字、汉字和 ,。, . ; ;这些符号
*/
for (char c : ct) {
String temp = String.valueOf(c);
String regex = "[a-zA-Z0-9\u4e00-\u9fa5 ,。, . ; ;]";
Pattern pattern = Pattern.compile(regex);
Matcher matcher = pattern.matcher(temp);
boolean bl = matcher.matches();
if (bl) {
stemp.append(temp);
}
}
str = stemp.toString().trim();
fos.write(str.getBytes()); //把过滤后的文件给读出来
fos.flush();
}
} catch (IOException e) {
e.printStackTrace();
}
} catch (FileNotFoundException e) {
System.out.println("file not found");
e.printStackTrace();
}
}
分享到:
Global site tag (gtag.js) - Google Analytics
相关推荐
在易语言中,“逐行读入文本”是一个常见的操作,用于处理文本文件,特别是处理大量数据或者进行数据分析时非常有用。这个操作涉及到几个关键的函数和概念,接下来将详细介绍。 首先,`逐行读入文本` 是易语言中...
对于需要对文件系统进行操作的应用程序来说,这些中断非常重要。 通过以上介绍可以看出,BIOS和DOS中断提供了丰富的功能集,使得程序员能够在较低级别上与硬件进行交互。掌握这些中断的功能及其使用方法,对于深入...
5. 分组计算平均成绩:为了分别计算男生和女生的平均成绩,我们可以使用Python的`filter()`函数根据性别过滤学生列表,然后使用`sum()`函数求成绩总和,再除以性别组内学生数量得到平均值。 6. 输出结果:最后,...
输入时,如果ZF=1表示无字符可读,否则AL寄存器将返回读入字符的ASCII码。 7. **09H - 显示字符串** - 用于输出存储在内存中的字符串,通过DS:DX寄存器对指向字符串的首地址,字符串以'$'结束。 8. **0AH - 键盘...
10. INT 21H功能0CH:清空当前的标准输入缓冲区,再读入字符,可以被重定向。 入口参数:AH=0CH,AL=01H、06H、07H、08H或0AH 出口参数:若入口参数AL为0AH,则DS:DX=存放输入字符的起始地址,否则,出口参数AL...
- **功能描述**:清空当前的标准输入缓冲区,再读入字符。 - **入口参数**: - AH = 0CH - AL = 01H、06H、07H、08H或0AH。 - **出口参数**: - 若入口参数AL为0AH,则DS:DX = 存放输入字符的起始地址,否则,...
2.12 怎样从/向数据文件读/写结构? 结构填充 2.13 为什么我的编译器在结构中留下了空洞?这导致空间浪费而且无法与外部数据文件进行“二进制”读写。能否关掉填充,或者控制结构域的对齐方式? 2.14 为什么...
2.12 怎样从/向数据文件读/写结构? 27 结构填充 27 2.13 为什么我的编译器在结构中留下了空洞?这导致空间浪费而且无法与外部数据文件进行“二进制”读写。能否关掉填充,或者控制结构域的对齐方式? 27 ...
- **GET将命令文件读到缓冲区**:用于将外部文件的内容读入SQL*PLUS缓冲区。 - **SPOOL将信息记录到文件中**:用于将SQL*PLUS输出重定向到文件。 - **再运行当前缓冲区的命令**:用于重新执行当前缓冲区中的...
- 要处理EML文件,可以先将其内容读入字符串,然后模拟一个连接到内存中的"邮箱",再调用`imap_open`等函数。 6. **安全与优化**: - 在处理用户输入时,务必注意防止注入攻击。确保正确过滤和转义用户提供的邮件...
### 数组的一些题目 #### 一、选择排序与插入排序 **知识点:** - **排序算法**:排序算法是...- 在主函数中,首先读入一行字符,利用`isLetter`函数过滤掉非字母数字字符,然后调用`testPalindrome`函数进行判断。
- **打印源程序**:边读入字符边打印,便于调试和检查。 **3. GETSYM的内部机制** GETSYM中定义了读字符过程`GETCH`,用于处理由一个或多个字符组成的单词。 #### 三、语法分析程序BLOCK的构建 **1. 功能介绍** ...
参数 图标文件, 文本型, 可空, 图标文件的路径 可空:为空时用目标的第一个图标 .参数 运行方式, 整数型, 可空, 1,常规方式,3,最大化,7,最小化 .参数 备注, 文本型, 可空, 快方式的备注信息 .参数 快捷键, 文本型, ...