这里书中写的是charactorProcess(File file, String destFile)

这里被我改成。(String file,  String destFIle)

一个代表现有的文件和要新建的文件



代码:



package com;





import java.io.BufferedReader;

import java.io.BufferedWriter;

import java.io.File;

import java.io.FileReader;

import java.io.FileWriter;

import java.io.IOException;

import java.util.HashMap;





public class FileRead {

public static String replace(String line){





//创建一个HashMap存储全角和半角字符之间的相应关系

HashMap map = new HashMap();

map.put(",", ",");

map.put("。

", ".");

       map.put("〈", "<");

       map.put("〉", ">");

       map.put("|", "|");

       map.put("《", "<");

       map.put("》", ">");

       map.put("[", "[");

       map.put("]", "]");

       map.put("?", "?

");

       map.put(""", "\"");

       map.put(":", ":");

       map.put("﹑", ",");

       map.put("(", "(");

       map.put(")", ")");

       map.put("【", "[");

       map.put("】", "]");

       map.put("-", "-");

       map.put(" ̄", "~");

       map.put("!", "!");

       map.put("`", "`");

       map.put("1", "1");

       map.put("2", "2");

       map.put("3", "3");

       map.put("4", "4");

       map.put("5", "5");

       map.put("6", "6");

       map.put("7", "7");

       map.put("8", "8");

       map.put("9", "9");

       

       int length = line.length();

       for(int i = 0; i < length; i++){

       
String charat = line.substring(i, i + 1);

       
if(map.get(charat) != null){

       
line = line.replace(charat, (String)map.get(charat));

       
}

       }

       return line;



}



public static File charactoProcess(String string, String destFile){

try{

//创建一个输出流,用于写新文件

BufferedWriter writer = new BufferedWriter(new FileWriter(destFile));



//创建一个输入流。用于读取文件

BufferedReader reader = new BufferedReader(new FileReader(string));

String line = reader.readLine();

while(line != null){



//调用replace方法替换全部的全角字符

String newline = replace(line);



//将替换后的String写入新的文件

writer.write(newline);



//写入行分隔符

writer.newLine();

line = reader.readLine();

}



reader.close();

writer.close();



}catch(IOException e){

e.printStackTrace();

}

return new File(destFile);

}





public static void main(String[] args) {

// TODO Auto-generated method stub

FileRead b = new FileRead();

b.charactoProcess("E:\\Lucene项目\\钢铁是怎么样练成的.txt", "E:\\Lucene项目\\目标文件.txt");





}





}

利用Lucene把文本的字体格式进行改动,然后输出到一个新的文件里的更多相关文章

  1. 利用fgetc合并2个源文件的内容,到一个新的文件中

    #include <stdio.h> #include <stdlib.h> //功能: 合并2个源文件的内容,到一个新的文件中 int main(int a,char *ar ...

  2. 使用@font-family时各浏览器对字体格式(format)的支持情况

    说到浏览器对@font-face的兼容问题,这里涉及到一个字体format的问题,因为不同的浏览器对字体格式支持是不一致的,这样大家有必要了解一下,各种版本的浏览器支持什么样的字体,前面也简单带到了有 ...

  3. 编写Java程序,读取文本文档的内容,去除文本中包含的“广告”字样,把更改后的内容保存到一个新的文本文档中

    查看本章节 查看作业目录 需求说明: 读取文本文档的内容,去除文本中包含的"广告"字样,把更改后的内容保存到一个新的文本文档中 实现思路: 在main() 方法中,使用 new F ...

  4. jpgraph中文使用手册之文本和字体控制教程

    摘要:在之前的php jpgraph安装配置教程中已介绍过jpgraph字体的安装与配置方法,jpgraph类库中字体和文本的使用是非常重要的,jpgraph既可以控 制文本的旋转.对齐方式.字体大小 ...

  5. 利用Lucene与Nutch构建简单的全文搜索引擎

    文章地址 1.简介 本次实现分为两个部分,第一个部分是利用Lucene构建一个全文的搜索引擎,另外一部分则是利用Nutch实现同样的功能.由于Lucene并不是一个可以直接运行的程序,且不具备爬虫和文 ...

  6. 几种web字体格式

    目前,文字信息仍是网站最主要的内容,随着CSS3技术的不断成熟,Web字体逐渐成为话题,这项让未来Web更加丰富多彩的技术拥有多种实现方案,其中之一是通过@font-face属性在网页中嵌入自定义字体 ...

  7. web字体格式及几种在线格式转换工具介绍

    原文地址:http://blog.csdn.net/xiaolongtotop/article/details/8316554 目前,文字信息仍是网站最主要的内容,随着CSS3技术的不断成熟,Web字 ...

  8. QTextEdit中选中文本修改字体与颜色,全部文本修改字体与颜色(设置调色板的前景色、背景色、文字颜色以及基色)

    ----我的生活,我的点点滴滴!! 当然以下内容都可以通过设置样式来达到目的,但是下面不使用这样的方法 先来看张图,理解此图基本就能实现上面所要达到的目的了 Widget::Widget(QWidge ...

  9. RF1001: 各浏览器对 '@font-face' 规则支持的字体格式不同,IE 支持 EOT 字体,Firefox Safari Opera 支持 TrueType 等字体

    http://w3help.org/zh-cn/causes/RF1001 http://blog.csdn.net/agileclipse/article/details/12450949 http ...

随机推荐

  1. VS2015快捷键及常用功能

    写下这些快捷键的操作,并不是全部记住,记住常用的,然后其他的来查询就好了. 1.回到上一个光标位置/前进到下一个光标位置 1)回到上一个光标位置:使用组合键“Ctrl + -”; 2)前进到下一个光标 ...

  2. CodeForces - 1017D The Wu

    题面在这里! 比较显而易见的暴力,O(2^(2n) + 2^n * 100) 就可以直接做了 #include<bits/stdc++.h> #define ll long long us ...

  3. HDU 6118 度度熊的交易计划(费用流)

    [题目链接] http://acm.hdu.edu.cn/showproblem.php?pid=6118 [题目大意] 给出一张无向边权图,每个点最多可以生产b[i]商品,每件代价为a[i], 每个 ...

  4. 什么是ClassLoader

    ClassLoader 做什么的? 顾名思义,它是用来加载 Class 的.它负责将 Class 的字节码形式转换成内存形式的 Class 对象.字节码可以来自于磁盘文件 *.class,也可以是 j ...

  5. 客户端获取ip

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...

  6. Java容器-引用数据类型排序+TreeSet、TreeMap底层实现

    目录 1.冒泡排序的实现 2.比较接口(普通数据类型.引用数据类型) 普通数据类型:冒泡排序 引用数据类型:包装类(Integer.String.Character.Date) 自定义类型:实体类:i ...

  7. ExtJs ComboBox 在IE 下 自动完成功能无效的解决方案

    使用 ComboBox 来作为自动完成的组件,就像google suggestion ,可是在IE下怎么也无法输入字符,是处于不可编辑状态,而firefox和chrome都正常显示.我在2个ExtJs ...

  8. 学习笔记:Tab Bar 控件使用详解

    注意这里是:Tab Bar 不是Tab Bar Controller. Tab bar是继承UIView,所以可以添加到ViewController里.是View就可以add到另一个View上去.Ta ...

  9. Socket INADDR_ANY详解

    转载:http://hi.baidu.com/zorro_knight/item/37af9e8c9dc71253e73d1924 linux下的socket INADDR_ANY表示的是一个服务器上 ...

  10. combogrid翻页后保持显示内容为配置的textField解决办法

    easyui的combogrid当配置pagination为true进行分页时,当datagrid加载其他数据页,和上一次选中的valueField不匹配时,会导致combogrid直接显示value ...