1. 程式人生 > >java讀取txt,寫入txt,讀取word,寫入excel總結

java讀取txt,寫入txt,讀取word,寫入excel總結

1. 讀取txt檔案:

使用ClassPathResource的原因在https://blog.csdn.net/nnnora/article/details/80734326中闡述過,因為是springboot內建web容器所以不能使用FileInputStream的方式獲取檔案流。

            //讀取txt檔案
            ClassPathResource classPathResource = new ClassPathResource("test.txt");
            InputStreamReader inputStreamReader = new InputStreamReader(classPathResource.getInputStream());
            BufferedReader bufferedReader = new BufferedReader(inputStreamReader);
            StringBuffer buffer = new StringBuffer();
            String line = null;
            while( (line = bufferedReader.readLine()) != null ){
                buffer.append(line);
            }
            bufferedReader.close();
            String buffer = buffer.toString();

2. 寫入txt檔案:

            //寫入txt
            BufferedWriter bufw = new BufferedWriter(new FileWriter("D:\\test\\result.txt"));
            for(Map.Entry<String, Integer> me : list){
                bufw.write(me+"");
                bufw.newLine();
            }
            bufw.close();

3. 讀取word文件

1. 首先需要引入以下jar包:


分別是操作doc和docx格式需要的jar包,關於引入jar包的語句格式可以去http://jareye.com/查詢,可以匯出maven或者gradle等工具下的compile語句。

2. 讀取word文件:

        try {
            //讀取word檔案
            String path = "Shocking level of sexual harassment at music festivals.docx";
            String buffer = "";
            if (path.endsWith(".doc")) {
                ClassPathResource classPathResource = new ClassPathResource(path);
                WordExtractor wordExtractor = new WordExtractor(classPathResource.getInputStream());
                buffer = wordExtractor.getText();
            } else if (path.endsWith("docx")) {
                ClassPathResource classPathResource = new ClassPathResource(path);
                XWPFDocument xdoc = new XWPFDocument(classPathResource.getInputStream());
                POIXMLTextExtractor extractor = new XWPFWordExtractor(xdoc);
                buffer = extractor.getText();
            } else {
                System.out.println("此檔案不是word檔案!");
            }
        }catch (Exception e){
            logger.error("@@ReadFileError", e);
        }

4. 寫入excel文件

            //寫入excel
            //第一步,建立一個workbook對應一個excel檔案
            HSSFWorkbook workbook = new HSSFWorkbook();
            //第二步,在workbook中建立一個sheet對應excel中的sheet
            HSSFSheet sheet = workbook.createSheet("詞頻檔案");
            //第三步,在sheet表中新增表頭第0行,老版本的poi對sheet的行列有限制
            HSSFRow row = sheet.createRow(0);
            //第四步,建立單元格,設定表頭
            HSSFCell cell = row.createCell(0);
            cell.setCellValue("單詞");
            cell = row.createCell(1);
            cell.setCellValue("頻次");

            //第五步,寫入實體資料
            int i = 0;
            for(Map.Entry<String, Integer> entity : list){
                HSSFRow row1 = sheet.createRow(i + 1);
                row1.createCell(0).setCellValue(entity.getKey());
                row1.createCell(1).setCellValue(entity.getValue());
                i++;
            }
            //將檔案儲存到指定的位置
            try {
                fos = new FileOutputStream("wordsResult.xls");
                workbook.write(fos);
                logger.info("寫入成功");
                fos.close();
            } catch (IOException e) {
                logger.error("@@WriteFileError", e);
            }

相關推薦

java讀取txt寫入txt讀取word寫入excel總結

1. 讀取txt檔案:使用ClassPathResource的原因在https://blog.csdn.net/nnnora/article/details/80734326中闡述過,因為是springboot內建web容器所以不能使用FileInputStream的方式獲取

Java讀取1G以上的txt檔案並對內容進行解析,利用BufferedReader設定快取大小

讀取檔案路徑 ,讀入 使用帶緩衝的輸入輸出流,效率更高,速度更快。建立一個內部緩衝區陣列並將其儲存在 buf 中,該buf的大小預設為8192。 File file = new File(filepath);    BufferedInputStream fis = ne

java 文件讀寫操作】 生成隨機數寫入txt然後從txt中讀出

進行 rac 直接 生成隨機數 catch trace buffered 代碼 tac 1.把生成的隨機數寫入到文件中 1 public static void WriterFun(){ 2 //獲得路徑 3 String filep

Java讀取txt文件和覆蓋寫入txt文件和追加寫入txt

amr file efi txt todo result cat void adt //創建文件 public static void createFile(File filename) { try { if(!filename.exists()) {

Java讀取txt檔案和寫入txt檔案-多種方法

記得關閉流,記得關閉流,記得關閉流, 讀取: 第一種: import java.io.BufferedReader; import java.io.File; import java.io.FileReader; import java.io.IOException; import

【pytorch】自定義讀取資料集使用txt文字

使用txt文字讀入資料可以減少記憶體的需要,有時候自定義載入資料集是非常必要的,我下面的程式碼是針對影象的,並且帶有label的有監督的影象。先看程式碼: import numpy as np import os import torch.nn as nn from PIL import Ima

Java讀取txt檔案和寫入txt檔案

import java.io.File;   import java.io.InputStreamReader;   import java.io.BufferedReader;   import java.io.BufferedWriter;   import java.io.FileInputSt

Unity 打包 讀取Txt檔案視窗初始化(解析度視窗位置)

1. Unity 程式視窗初始化指令碼 using System; using System.Collections; using System.Runtime.InteropServices; using UnityEngine; using UnityEngine.UI

讀取文字檔案中Student.txt中內容(編號姓名成績)存放到學生物件中並新增到集合物件然後將分數低於等於80分的學生輸出到另外一個檔案中

讀取文字檔案中Student.txt中內容(編號,姓名,成績)存放到學生物件中,並新增到集合,然後將分數低於等於80分的學生輸出到另外一個檔案中 大概說一下,這裡面加上main函式一共有addlist()、outgrade()、creatstu()4個方法。

Python+OGR庫學習(一):讀取點向量檔案屬性值和座標並儲存為TXT(一行一個要素值)

程式碼思路: 1、匯入相關庫包,切換到當前資料夾 2、註冊驅動,開啟點向量檔案,獲取圖層 3、開啟待寫入TXT檔案 4、遍歷要素: (1)獲取當前要素‘ID’和‘cover’欄位屬性 (2)獲取當前點要素對應幾何物件和其座標值X,Y (3)將ID、cover、X、Y寫入TXT檔案 (

python中讀取txt檔案windows下麼有毛病到Linux下總是隻有最後一行有效怎麼解決?

比如:這個txt有5行, fin = open('F:\\temp\\name.txt','r') for line in fin: strsname = line.rstrip('\n') AAA('F:\\temp','F:\\temp\\2',str

python讀取excel中表結構生成sql語句存入txt檔案

python-excel-sql-txt#coding=utf-8 from openpyxl import load_workbook #讀取excel的資料 def read_excel(): #開啟一個workbook wb = load_workboo

python檔名讀取txt中每行的最後一個字元提取放入另一個txtpython批量轉化tif檔案為jpg

把需要的部分註釋回來就好 # ===============讀取資料夾內檔案並輸出檔名到某txt上======================== # rootdir = "./test" # # file_object = open('test1.txt','w')

讀取TXT文件中的每一行並存儲到陣列當中

//只讀形式獲取文字中的內容$file = fopen("filename.txt", "r");//儲存檔案內容$file_content=array();$i=0;//輸出文字中所有的行,直到檔案結束為止。while(! feof($file)){ //獲取檔案內容並存儲

linux路徑分隔符'/'與windows下的分隔符'\'以及java項目web項目讀取項目的路徑

oid ont resource light ros ren -i microsoft 配置文件 1, linux下的文件分隔符是‘/‘, windows下的文件分隔符為‘\‘。但是‘\‘這個符號是轉義符。如果需要在console輸出‘\‘這個符號的,你需要輸入‘\\‘。另

使用python讀取word寫入execl

bubuko win name 圖片 doc table -- sta mage #coding:utf-8 import os import win32com from win32com.client import Dispatch,constant

Java程式設計師從笨鳥到菜鳥之(一百零三)java操作office和pdf檔案(一)java讀取wordexcel和pd

分享一下我老師大神的人工智慧教程!零基礎,通俗易懂!http://blog.csdn.net/jiangjunshow 也歡迎大家轉載本篇文章。分享知識,造福人民,實現我們中華民族偉大復興!        

java結合testng利用txt做資料來源的資料驅動例項

import org.testng.annotations.DataProvider; import org.testng.annotations.Test; import java.io.BufferedReader; import java.io.FileInputStream; imp

C語言產生一組數字並將其寫入txt文件中

#include<stdio.h> /*產生一組連續的數字,並將其寫到txt文件中*/ /*說明:本程式在在win10 系統64位下用Dev-C++ 5.11版本編譯器編譯的*/int main(){ int m=1; FILE *fp=NULL; fp=fopen("D:\\1.txt","