日期:2014-05-20  浏览次数:20845 次

怎样输出?
test.txt文件内容如下:

我们是国内著名的网络营销服务商,目前我们所开发销售的
各类电子商务系统深受众商家的喜爱。通过我们的系统在几分钟
内就可以完全建立好自己的大型网络商城。

  2004年大路网络强劲推出多款电子商务销售平台,其中包含
“大路网络专卖店系统”“大路网络超市系统”“大路网络标准版
商城系统”“大路网络专业版商城系统”“大路网络增强版商城系
统”其安装简单方便,只需将程序上传至服务器后即可使用,强大
的后台管理可以任意添加修改栏目、图片上传、商品管理、订单处
理,同时用户可根据自己的需要随意修改界面色彩可满足个性化设
置。无需专业知识就可以轻松管理建设自己独立的网络销售平台几
乎适合所有的行业在线产品销售、产品展示使用。现在上千家国内
网络商城均使用大路电子商务销售平台建立,从现在开始我们将是
您开展电子商务的有力保障!

怎样用java每次输出一句(以句号为准),再输出一空行。再一句、一空行......


------解决方案--------------------
split分隔
然后循环打印?
------解决方案--------------------
给分吧 哈哈
Java code
import java.io.*;

public class FileToString {
     public static String readFile(String fileName) {
        String output = ""; 
        
        File file = new File(fileName);
           
        if(file.exists()){
            if(file.isFile()){
                try{
                    BufferedReader input = new BufferedReader (new FileReader(file));
                    StringBuffer buffer = new StringBuffer();
                    String text = input.readLine();            
                                                                   
                    while(text != null){                
                        buffer.append(text +"\n");
                        text = input.readLine();
                    }
                    
                    output = buffer.toString();                       
                }
                catch(IOException ioException){
                    System.err.println("File Error!");

                }
            }
            else if(file.isDirectory()){
                String[] dir = file.list();
                output += "Directory contents:\n";
                
                for(int i=0; i<dir.length; i++){
                    output += dir[i] +"\n";
                }
            }
        }
        else{
            System.err.println("Does not exist!");
        }
        return output;
     }
     
     public static void main (String args[]){
         String  str = readFile("C:/1.txt");
         
         //System.out.print(str);
         String[] strSplit = str.split("。");
         
         for (String element : strSplit){
             System.out.println(element.trim());
             System.out.println();
         }
     }
}

------解决方案--------------------
我这样处理不知是否能满足楼的要求:
Java code

import java.io.*;

public class Test {

    /**
     * @param args
     */
    public static void main(String[] args) {
        // TODO Auto-generated method stub
        
        StringBuffer text = new StringBuffer();

        try {
            BufferedReader reader = new BufferedReader(new FileReader("D:\\test.txt"));
            String str;
            while ((str = reader.readLine()) != null) {
                str = str.replaceAll("。", "。\n\n");
                text.append(str);                
            }
        } catch (IOException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
        
        System.out.println(text);
        
    }

}

------解决方案--------------------
Java code

package com.qq.server;

import java.io.BufferedReader;
import java.io.FileNotFoundException;
import java.io.FileReader;
import java.io.IOException;

public class Test4 {
     public static void main(String[] args) {
     try {
            FileReader fr = new FileReader("e:\\test.txt");
            BufferedReader br = new BufferedReader(fr);
            String str = null;
            String outputStr = "";
            String[] outputArray = null;
            while ((str = br.readLine()) != null) {
                outputStr += str.trim();
            }
            outputArray = outputStr.split("(?<=[。!?])");// 用 。 ! ?其中一个分隔
            for (int i = 0; i < outputArray.length; i++) {
                System.out.println(outputArray[i] + "\n");
            }
            br.close();
            fr.close();
        } catch (FileNotFoundException e) {
            e.printStackTrace();
        } catch (IOException e) {
            e.printStackTrace();
        }

    }

}