⑴ java中怎樣生成cvs文件
import java.io.BufferedWriter;
import java.io.File;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.OutputStreamWriter;
import java.util.ArrayList;
import java.util.Iterator;
import java.util.LinkedHashMap;
import java.util.List;
import java.util.Map;
import org.apache.commons.beanutils.BeanUtils;
public class CSVUtils {
public static File createCSVFile(List exportData, LinkedHashMap rowMapper,
String outPutPath, String filename) {
File csvFile = null;
BufferedWriter csvFileOutputStream = null;
try {
csvFile = new File(outPutPath + filename + ".csv");
// csvFile.getParentFile().mkdir();
File parent = csvFile.getParentFile();
if (parent != null && !parent.exists()) {
parent.mkdirs();
}
csvFile.createNewFile();
// GB2312使正蔽頌確讀取分隔符","
csvFileOutputStream = new BufferedWriter(new OutputStreamWriter(
new FileOutputStream(csvFile), "GB2312"), 1024);
// 寫入文件頭部
for (Iterator propertyIterator = rowMapper.entrySet().iterator(); propertyIterator
.hasNext();) {
java.util.Map.Entry propertyEntry = (java.util.Map.Entry) propertyIterator
.next();
csvFileOutputStream.write("顫御\""
+ propertyEntry.getValue().toString() + "\"");
if (propertyIterator.hasNext()) {
csvFileOutputStream.write(",");
}
}
csvFileOutputStream.newLine();
// 寫入文件內宏洞鄭容
for (Iterator iterator = exportData.iterator(); iterator.hasNext();) {
Object row = (Object) iterator.next();
System.out.println(row);
for (Iterator propertyIterator = rowMapper.entrySet().iterator(); propertyIterator.hasNext();) {
java.util.Map.Entry propertyEntry = (java.util.Map.Entry) propertyIterator.next();
System.out.println( BeanUtils.getProperty(row, propertyEntry.getKey().toString()));
csvFileOutputStream.write("\""
+ propertyEntry.getValue().toString() + "\"");
if (propertyIterator.hasNext()) {
csvFileOutputStream.write(",");
}
}
if (iterator.hasNext()) {
csvFileOutputStream.newLine();
}
}
csvFileOutputStream.flush();
} catch (Exception e) {
e.printStackTrace();
} finally {
try {
csvFileOutputStream.close();
} catch (IOException e) {
e.printStackTrace();
}
}
return csvFile;
}
public static void main(String[] args) {
List exportData = new ArrayList<Map>();
Map row1 = new LinkedHashMap<String, String>();
row1.put("1", "11");
row1.put("2", "12");
row1.put("3", "13");
row1.put("4", "14");
exportData.add(row1);
row1 = new LinkedHashMap<String, String>();
row1.put("1", "21");
row1.put("2", "22");
row1.put("3", "23");
row1.put("4", "24");
exportData.add(row1);
List propertyNames = new ArrayList();
LinkedHashMap map = new LinkedHashMap();
map.put("1", "第一列");
map.put("2", "第二列");
map.put("3", "第三列");
map.put("4", "第四列");
CSVUtils.createCSVFile(exportData, map, "d:/aaaaaa/mmm/", "活動目錄");
}
}
補充;Java是一種可以撰寫跨平台應用程序的面向對象的程序設計語言。Java 技術具有卓越的通用性、高效性、平台移植性和安全性,廣泛應用於PC、數據中心、游戲控制台、科學超級計算機、行動電話和互聯網,同時擁有全球最大的開發者專業社群。
⑵ java將查詢數據導出成csv文件的問題
生成.csv文件有第三方包javacsv.jar,例子網上找,很簡單
提示用戶下載,用流實現,網路上更多
提供個JSP的例子給你。
<%@ page language="java" pageEncoding="UTF-8"%>
<%
// example:
// <a href="download.jsp?p=img/test.gif">download image</a>
String path = request.getParameter("p");
String name = request.getParameter("name");
String root = getServletContext().getRealPath(path);
if (name == null) {
int index = path.lastIndexOf("/");
if (index >= 0) {
name = path.substring(index + 1);
} else {
name = path;
}
}
response.setContentType("unknown");
response.addHeader("content-disposition", "filename=\"" + name + "\"");
java.io.OutputStream os = response.getOutputStream();
try {
java.io.FileInputStream fis = new java.io.FileInputStream(root);
byte[] b = new byte[1024];
int i = 0;
while ( (i = fis.read(b)) > 0 ) {
os.write(b, 0, i);
}
fis.close();
os.flush();
os.close();
}
catch ( Exception e )
{
e.printStackTrace();
}
out.clear();
out = pageContext.pushBody();
%>
⑶ JAVA中如何使用創建CSV文件
csv文件又叫逗號文件
你只要new一個File文件,文件路徑給好,文件名隨便起,文件名後綴是csv就可以了
然後把這個文件放到流對象中,你要寫什麼直接對這個流進行操作即可
⑷ java怎樣寫入一個csv文件
所以你寫csv表格,這么做就可以了,每寫一列就加一個,就是第二列。
距離有個BufferWriter writer對象要寫一個csv文件。
writer.wrtie("第一列");
writer.write(",");
writer.write("第二列");
這就是一個簡單的用,分割的csv文件。
⑸ java如何導出csv文件 用戶點擊導出可以導出到他想保存的地方
這種通常是如下做法:
1:提供查詢頁面,讓用戶輸入查詢條件
2:根據查詢條件到資料庫去檢索,並獲取到對應的記錄
3:生成csv到本地(可以省略,生成臨時文件到tomcat的臨時目錄)
4:用讀取文件,用response寫流到客戶端
⑹ java生成 csv excel 亂碼怎麼辦
准備一個有亂碼的CSV文件用於演示,如圖。
首先我們右鍵此CSV文件,選擇「用記事本打開」
打開後,點擊「文件」--「另存為」。
我們發現默認編碼是「UTF-8」,所以一些Excel表格軟體就會顯示亂碼。對於這樣,我們只要改成ANSI就行了,按確定。
5
用Excel表格軟體再打開,就不會顯示亂碼了。