jsp載入csv,在jsp中

本文目錄一覽:

java jsp中如何實現下載.csv文件、並自動保存到指定的文件夾下

你這種想法不太現實

首先你客戶端要跟伺服器交互是要客戶端主動發送請求

然後建立連接去操作

就算你不手動選保存路徑,那你還是要寫代碼去實現這個過程的

實現方式就兩種了

bs跟cs架構均可

思路是一樣的

BS:

servlet讀取本地文件,然後以流的形式輸出就行,注意要設置輸出的MINE類型也就是contentType

你客戶端寫個程序通過http訪問這個servlet,然後通過程序去保存到你移動硬碟

如果是cs架構的話,你的服務端監聽socket

如果有客戶端連接那就等待接收命令或者是直接往客戶端傳文件的二進位流

客戶端:已啟動就連接服務端,發送文件請求,處理回傳的文件位元組流

JSP頁面將查詢結果導出為CSV文件

你好運氣啊~~我前幾天剛做過這個~~~

下面這大段代碼是2個方法 除了在第一個方法里將文件名和要寫入的表頭改成你自己的之外其餘照搬就可以了 最後只需用在你的主方法里調用這兩個方法就行了

不易理解的地方我做了注釋 祝你成功~~~

public File putOutTaskToExcelFile(ListE getPutOutTaskResult) {

//在我的代碼里,getPutOutTaskResult是我需要導出的信息列表,你換成你的就行

BufferedWriter out = null;

int random = (int) (Math.random() * 1000 + 1);

//這個隨機數只是為了讓後面生成的文件名不重複而已

File excelFile = null;

try {

excelFile = File.createTempFile(“你的文件名” + random,”.csv”);

//生成一個csv臨時文件

excelFile.deleteOnExit();

} catch (IOException e1) {

e1.printStackTrace();

}

int i = 1;

try {

out = new BufferedWriter(new FileWriter(excelFile));

out

.write(“序號” + “,” + “用戶號碼” + “,” + “是否成功” + “,” + “失敗原因”

+ “,”);//換成你需要的表頭

out.newLine();

IteratorE resultIterator = getPutOutTaskResult.iterator();

while (resultIterator.hasNext()) {

E e = resultIterator.next();

out.write(i + “,” + A + “,”

+ B + “,” + C);

//A、B、C等等都換上你自己的就可以 i是一個自增序號

out.newLine();

i++;

}

out.flush();

} catch (IOException e) {

e.printStackTrace();

} finally {

if (out != null) {

try {

out.close();

} catch (IOException e) {

e.printStackTrace();

}

}

}

return excelFile;

}

/**

* 將伺服器端生成的Excel文件提供給客戶端下載

*

* @param request

* @param response

* @param tempFile

*/

private void download(HttpServletRequest request,

HttpServletResponse response, File tempFile) {

String filenamedownload = tempFile.toString();

String filenamedisplay = tempFile.getName();

try {

filenamedisplay = URLEncoder.encode(filenamedisplay, “UTF-8”);

} catch (UnsupportedEncodingException e1) {

e1.printStackTrace();

}

response.addHeader(“Content-Disposition”, “attachment;filename=”

+ filenamedisplay);

OutputStream output = null;

FileInputStream fis = null;

try {

output = response.getOutputStream();

fis = new FileInputStream(filenamedownload);

byte[] b = new byte[1024];

int i = 0;

while ((i = fis.read(b)) 0) {

output.write(b, 0, i);

}

output.flush();

} catch (Exception e) {

e.printStackTrace();

} finally {

if (fis != null) {

try {

fis.close();

} catch (IOException e) {

e.printStackTrace();

}

fis = null;

}

if (output != null) {

try {

output.close();

} catch (IOException e) {

e.printStackTrace();

}

output = null;

}

}

}

怎麼實現在jsp頁面讀取csv文件的內容

前台可以通過JS過濾文件類型,如果是CSV,允許上傳,如果不是,給出提示。 後台先上傳文件,如果成功,記錄成功數量,失敗記錄失敗數量。(這裡記住要先上傳在解析, 外在因素可能導致多種失敗的情況。) 具體信息可以讓他下載後查看。

前台jsp獲取查詢到的資料庫數據,導出為csv文件(幾十萬行)如何讓處理?

一次性長時間佔用鏈接很容易超時的,

所以我一般採用ajax一頁50條數據,分頁處理,處理完的數據給個標識,

文件的寫入使用補充的形式不用覆蓋的方式如

FileWriter a=new FileWriter(“d:/abc.csv”); 改成 FileWriter a=new

FileWriter(“d:/abc.csv”,true);這樣就不會覆蓋原來寫入的內容。

先在伺服器上生成csv文件再提供給用戶下載。

關於用jsp編寫,導出資料庫中文件為”.csv”文件問題

設置下response就可以了吧。

response.setContentType(“application/csv”);

response.setHeader(“Content-Disposition”, “inline; filename=”result.csv””);

關於文件下載你應該做過吧。只要設置了response的輸出類型 下載都是同樣的道理

下面的例子是沒有下載功能的。

String queryResult = …;

response.setContentType(“application/csv”);

response.setHeader(“Content-Disposition”, “inline; filename=”result.csv””);

PrintWriter out = new PrintWriter(new OutputStreamWriter(

response.getOutputStream(), “UTF-8”));

out.print(queryResult);

out.close();

—————————-

那就比較鬱悶了~下載可以有多種實現方式的。建議你去找下符合你當前項目的下載示例看看。

只要你能下載了 那導出任何格式的文件都非常簡單的。

原創文章,作者:WXDI,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/148924.html

(0)
打賞 微信掃一掃 微信掃一掃 支付寶掃一掃 支付寶掃一掃
WXDI的頭像WXDI
上一篇 2024-11-04 17:50
下一篇 2024-11-04 17:50

相關推薦

  • Python讀取CSV數據畫散點圖

    本文將從以下方面詳細闡述Python讀取CSV文件並畫出散點圖的方法: 一、CSV文件介紹 CSV(Comma-Separated Values)即逗號分隔值,是一種存儲表格數據的…

    編程 2025-04-29
  • Python將矩陣存為CSV文件

    CSV文件是一種通用的文件格式,在統計學和計算機科學中非常常見,一些數據分析工具如Microsoft Excel,Google Sheets等都支持讀取CSV文件。Python內置…

    編程 2025-04-29
  • 如何使用Python讀取CSV數據

    在數據分析、數據挖掘和機器學習等領域,CSV文件是一種非常常見的文件格式。Python作為一種廣泛使用的編程語言,也提供了方便易用的CSV讀取庫。本文將介紹如何使用Python讀取…

    編程 2025-04-29
  • 使用Python創建CSV文件並寫入數據

    本文將介紹如何使用Python創建CSV文件並寫入數據,主要包括以下幾個方面: 一、CSV文件介紹 CSV(Comma-Separated Values)文件是一種常用的簡單數據交…

    編程 2025-04-28
  • R讀取CSV文件出錯:解決方法

    CSV(Comma Separated Values)是一種常見的表格數據交換格式,在數據處理與分析中,CSV文件的讀取是一項非常基礎的操作。然而,在使用R語言讀取CSV文件時,經…

    編程 2025-04-28
  • SPSS導入CSV數據指南

    在數據處理和分析的過程中,導入數據是一個重要的步驟。SPSS作為一個常用的分析軟體,支持多種數據格式的導入,包括CSV。在本指南中,我們將學習如何使用SPSS導入CSV格式的數據文…

    編程 2025-04-28
  • pyspark CSV 少數據用法介紹

    本文將從解答標題、CSV與pyspark的關係、異常處理、性能優化、數據可視化等多個方面詳細闡述pyspark CSV 少數據處理。 一、CSV與pyspark的關係 CSV是一種…

    編程 2025-04-27
  • 為什麼web項目的歡迎頁必須是jsp?

    在web項目中,歡迎頁通常是用戶首次訪問的頁面。而對於這個頁面的選擇,我們通常會選擇jsp作為歡迎頁,其原因是什麼呢? 一、JSP的優勢 JSP與HTML和CSS的結合,可以實現動…

    編程 2025-04-25
  • matlab讀取csv文件

    一、導入csv文件 1、使用readtable函數進行導入 data = readtable(‘filename.csv’); 2、使用csvread函數進行導入,但只能導入純數值…

    編程 2025-04-23
  • JSP菜鳥教程詳解

    一、JSP介紹 JSP全稱Java Server Pages,是一種動態網頁技術,它可以將Java代碼嵌入HTML頁面,實現動態頁面的功能。 下面是一個JSP頁面的簡單示例: He…

    編程 2025-04-12

發表回復

登錄後才能評論