java讀取文本
⑴ 如何通過java 讀取.wps et及 dps文件格式的內容
下面是三個java例子,關於讀取wps/et/dps的方法
1.讀取wps(讀取文本): 通過流載入wps文件,讀取文字內容
import com.spire.doc.*;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileWriter;
import java.io.IOException;
public class ReadTextFromWPS {
public static void main(String[] args) throws IOException{
//通過流載入WPS文字文檔
FileInputStream inputStream = new FileInputStream(new File("test.wps"));
Document doc = new Document();
doc.loadFromStream(inputStream, FileFormat.Doc);
//獲取文本保存為String
String text = doc.getText();
//將String寫入Txt
writeStringToTxt(text,"讀取WPS文本.txt");
}
public static void writeStringToTxt(String content, String txtFileName) throws IOException {
FileWriter fWriter= new FileWriter(txtFileName,true);
try {
fWriter.write(content);
}catch(IOException ex){
ex.printStackTrace();
}finally{
try{
fWriter.flush();
fWriter.close();
} catch (IOException ex) {
ex.printStackTrace();
}
}
}
}
2. 讀取et:直接載入et格式的表格文件,讀取數據
import com.spire.xls.*;
public class ExcelToText {
public static void main(String[] args) {
//載入et格式的表格文件
Workbook workbook = new Workbook();
workbook.loadFromFile("test.et");
//獲取工作表
Worksheet sheet = workbook.getWorksheets().get(0);
//獲取指定單元格中的文本數據
CellRange range = sheet.getCellRange("A1");
String text = range.getText().trim();
System.out.println(text);
}
}
3.讀取dps:直接載入dps格式的幻燈片文檔,讀取文本
import com.spire.presentation.IAutoShape;
import com.spire.presentation.ISlide;
import com.spire.presentation.ParagraphEx;
import com.spire.presentation.Presentation;
import java.io.FileWriter;
public class ExtractText {
public static void main(String[]args) throws Exception{
//載入測試文檔
Presentation ppt = new Presentation();
//ppt.loadFromFile("test.pptx");
ppt.loadFromFile("test.dps");
StringBuilder buffer = new StringBuilder();
//遍歷文檔中的幻燈片,提取文本
for (Object slide : ppt.getSlides())
{
for (Object shape : ((ISlide) slide).getShapes())
{
if (shape instanceof IAutoShape)
{
for (Object tp : ((IAutoShape) shape).getTextFrame().getParagraphs())
{
buffer.append(((ParagraphEx) tp).getText());
}
}
}
}
//保存到文本文件
FileWriter writer = new FileWriter("ExtractTextfromDPS.txt");
writer.write(buffer.toString());
writer.flush();
writer.close();
}
}
這里須在Java程序中導入spire.office.jar文件。
⑵ 如何用java從txt讀取文本,並處理後輸出新的文本
public static void main(String[] args) throws IOException,
ClassNotFoundException {
try {
FileInputStream in = new FileInputStream(//創建輸入流
"E:\\0326java\\javase\\src\\io\\TestFileInputStream.java");
FileOutputStream out = new FileOutputStream("E:\\1.txt");//創建輸出流
int i = 0;
while ((i = in.read()) != -1) {
System.out.print((char) i);//循環讀取文件數據
out.write(i);//每讀一個數據輸入到1.txt中
}
out.flush();
out.close();
} catch (FileNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
⑶ java如何讀取txt文件內容
給你兩個方法,你可以看看;
//獲取值返回String文本
publicStringtxt2String(StringfilePath){
Filefile=newFile(filePath);
StringBuilderresult=newStringBuilder();
try{
BufferedReaderbr=newBufferedReader(newFileReader(file));//構造一個BufferedReader類來讀取文件
Strings=null;
while((s=br.readLine())!=null){//使用readLine方法,一次讀一行
result.append(s+System.lineSeparator());
}
br.close();
}catch(Exceptione){
e.printStackTrace();
}
returnresult.toString();
}
//獲取值不返回String文本
publicvoidreadTxtFile(StringfilePath){
try{
Stringencoding="GBK";
Filefile=newFile(filePath);
if(file.isFile()&&file.exists()){//判斷文件是否存在
InputStreamReaderread=newInputStreamReader(
newFileInputStream(file),encoding);//考慮到編碼格式
BufferedReaderbufferedReader=newBufferedReader(read);
StringlineTxt=null;
while((lineTxt=bufferedReader.readLine())!=null){
System.out.println(lineTxt);
}
read.close();
}else{
System.out.println("找不到指定的文件");
}
}catch(Exceptione){
System.out.println("讀取文件內容出錯");
e.printStackTrace();
}
}
⑷ java如何讀取txt文件
讀取txt文件(一整個獲取)
⑸ java怎麼讀取文本文件中的所有字元
可以用文件流FileInputStream的方式讀取,如果文本文件太大了,不建議一次性往內存中讀,那往往會使之溢出。也可以一行行的讀取,用BufferReader讀,具體的實例都可以網路得到的。
⑹ JAVA有什麼好的方法可以將word里的文本讀取出來
你用免費版的Free Spire.Doc for Java可以直接讀取Word文檔裡面的文本,參考代碼:
import com.spire.doc.Document;
import java.io.FileWriter;
import java.io.IOException;
public class ExtractText {
public static void main(String[] args) throws IOException {
//載入Word文檔
Document document = new Document();
document.loadFromFile("C:\Users\Administrator\Desktop\sample.docx");
//獲取文檔中的文本保存為String
String text=document.getText();
//將String寫入Txt文件
writeStringToTxt(text,"ExtractedText.txt");
}
public static void writeStringToTxt(String content, String txtFileName) throws IOException {
FileWriter fWriter= new FileWriter(txtFileName,true);
try {
fWriter.write(content);
}catch(IOException ex){
ex.printStackTrace();
}finally{
try{
fWriter.flush();
fWriter.close();
} catch (IOException ex) {
ex.printStackTrace();
}
}
}
}
參考自官網原文。
⑺ JAVA關於read(char[])方法讀取文本內容的問題
我們就以內容是abcde為例:你設置的buf長度是1024,因此每次從文件中讀取1024個字元。
第一次讀取,fr.read(buf),因為文件中就5個字元,全被讀到了buf中,此時len=5,執行循環體中的語句,輸出abcde;然後程序繼續執行;
第二次讀取,fr.read(buf),由於文件中的數據第一次已經讀完,因此此時返回值為-1,跳出循環。
所以最後輸出abcde.
⑻ java如何讀取txt文本數據並以數組形式一行
import java.io.BufferedReader;
import java.io.File;
import java.io.FileReader;
public class ReadFiledata {
public static String txt2String(File file){
StringBuilder result = new StringBuilder();
try{
BufferedReader br = new BufferedReader(new FileReader(file));//構造一個BufferedReader類來讀取文件
String s = null;
while((s = br.readLine())!=null){//使用readLine方法,一次讀一行
result.append(System.lineSeparator()+s);
}
br.close();
}catch(Exception e){
e.printStackTrace();
}
return result.toString();
}
public static void main(String[] args){
File file = new File("F:/card.txt");//我的txt文本存放目錄,根據自己的路徑修改即可
System.out.println(txt2String(file));
}
}
⑼ 如何在java中讀取word文件
java讀取word文檔,獲取文本內容,保留基本的換行格式。
java用POI對word進行解析。所需jar包,用maven引入
<dependency>
<groupId>org.apache.poi</groupId>
<artifactId>poi-scratchpad</artifactId>
<version>3.2-FINAL</version>
</dependency>
前端用webuploader上傳控制項,限制上傳文件類型僅支持text和word.
txt為word的文本內容