Jsp常用功能CSV文件的生成與分析(3)_JSP教程
推薦:JSPServletJSF自定義標簽jsp自定義標簽的定義步驟: 創(chuàng)建標記處理器 創(chuàng)建TLD文件 編輯web.xml 在JSP頁面中使用此標簽 模板無憂 在此我們主要討論和學(xué)習(xí)的不是如何開發(fā)自定義標簽,所以具體的開發(fā)事例百度
寫好這些類之后,就可以開始著手測試了。
寫一個測試CSV文件生成的jsp文件。如:
<%@ page contentType="text/html" import="com.vogoal.util.*,com.vogoal.util.csv.*,java.io.IOException" %>
create a csv file
<%
try {
CSVCreater csvCre = new CSVCreater("C:\\test.csv");
csvCre.setConvertFlag(true);
csvCre.setData("aaa");
csvCre.setData("aa,a");
csvCre.writeLine();
csvCre.setData("aa\"a");
csvCre.setData("aa,a");
csvCre.setData("aa,a");
csvCre.writeLine();
csvCre.setData("aa\"a");
csvCre.setData("aa,\"a");
csvCre.setData("aa,\"a");
csvCre.setData("aa,\"a");
csvCre.setData("aa,\"a");
csvCre.writeLine();
csvCre.close();
} catch (IOException e) {
e.printStackTrace();
}
%>
寫一個測試CSV文件分析的jsp文件。如:
<%@ page contentType="text/html" import="com.vogoal.util.*,com.vogoal.util.csv.*,java.io.IOException,
java.util.ArrayList" %>
analysis a csv file
<%
try {
CSVAnalysis csvAna = new CSVAnalysis("C:\\test.csv");
csvAna.setConvertFlag(true);
ArrayList al = csvAna.analysis();
for (int i = 0; i < al.size(); i ) {
out.println( (i 1) " line start
");
ArrayList al1 = (ArrayList) al.get(i);
for (int j = 0; j < al1.size(); j ) {
out.println(al1.get(j));
out.println("
");
}
out.println( (i 1) " line end
");
}
csvAna.close();
} catch (IOException e) {
e.printStackTrace();
}
%>
將編譯后的class拷貝到TOMCAT自己的應(yīng)用的WEB-INF下。將jsp文件放到自己的應(yīng)用下。
然后啟動TOMCAT,訪問jsp文件,當訪問creCSV.jsp的時候,正常情況下可以看到C盤根目錄下生成了一個test.csv文件。然后訪問anaCSV.jsp文件,可以看到分析后的數(shù)據(jù)被打印出來。
至此,csv生成,分析類做成。
使用幫助:
CSVCreater.java類,用來生成CSV文件的類。
構(gòu)造函數(shù)public CSVCreater(String arg) throws IOException
參數(shù):arg 要生成的csv文件的絕對路徑
使用例CSVCreater csvCre = new CSVCreater("C:\\test.csv");
public void setConvertFlag(boolean b)
是否轉(zhuǎn)義設(shè)定函數(shù)(將半角雙引號進行轉(zhuǎn)義處理)
參數(shù):true 需要轉(zhuǎn)義(推薦) false 不轉(zhuǎn)義
public void setData(String data)
添加單個數(shù)據(jù)的函數(shù)
public void writeLine()
結(jié)束換行函數(shù)
public void writeDataByLine(String[] args)
將一個數(shù)組的元素添加到一行并換行函數(shù)
public void close() throws IOException
必須調(diào)用的函數(shù),寫入文件并關(guān)閉文件處理的對象。
例子可參考jsp文件中的代碼,但是jsp文件中的close()方法是在try塊中執(zhí)行的,不推薦,使用的時候還是在finally塊中執(zhí)行要安全一些。
這個類涉及到了文件的操作,有可能出現(xiàn)IOException,出現(xiàn)異常的時候會拋出給使用者。
CSVAnalysis.java
構(gòu)造函數(shù) public CSVAnalysis(String f) throws IOException
參數(shù)是要分析的文件的絕對路徑。
public ArrayList analysis() throws IOException
分析流處理的方法,返回ArrayList對象。返回的ArrayList的數(shù)據(jù)格式是
ArrayList中存放著ArrayList對象,存放的每個ArrayList對象對應(yīng)csv文件的一行。
一行對應(yīng)的ArrayList中存放著String對象,為該行中所有的數(shù)據(jù)。
public void close() throws IOException
必須調(diào)用的函數(shù),關(guān)閉文件處理的對象。
同樣,這個方法應(yīng)在finally塊中執(zhí)行要安全一些。
分享:Jsp常用技巧圖片驗證碼思路: 圖片驗證碼的實現(xiàn)主要的技術(shù)點是如何生成一個圖片。生成圖片可以使用java.awt包下的類來實現(xiàn)。我們先寫一個簡單的生成圖片的程序HelloImage.java。以下是代碼部分。 package
- jsp response.sendRedirect不跳轉(zhuǎn)的原因分析及解決
- JSP指令元素(page指令/include指令/taglib指令)復(fù)習(xí)整理
- JSP腳本元素和注釋復(fù)習(xí)總結(jié)示例
- JSP FusionCharts Free顯示圖表 具體實現(xiàn)
- 網(wǎng)頁模板:關(guān)于jsp頁面使用jstl的異常分析
- JSP頁面中文傳遞參數(shù)使用escape編碼
- 基于jsp:included的使用與jsp:param亂碼的解決方法
- Java Web項目中連接Access數(shù)據(jù)庫的配置方法
- JDBC連接Access數(shù)據(jù)庫的幾種方式介紹
- 網(wǎng)站圖片路徑的問題:絕對路徑/虛擬路徑
- (jsp/html)網(wǎng)頁上嵌入播放器(常用播放器代碼整理)
- jsp下顯示中文文件名及絕對路徑下的圖片解決方法
- 相關(guān)鏈接:
- 教程說明:
JSP教程-Jsp常用功能CSV文件的生成與分析(3)
。