第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

由 JAR 文件創(chuàng)建的 Excel 文件被分解為更小的文件,盡管我沒有在 IDE 中執(zhí)行此操作

由 JAR 文件創(chuàng)建的 Excel 文件被分解為更小的文件,盡管我沒有在 IDE 中執(zhí)行此操作

肥皂起泡泡 2023-09-20 19:07:04
我有一個程序,可以從 SQL 查詢中提取數(shù)據(jù),并且能夠創(chuàng)建搜索的數(shù)據(jù)并將其寫入 Excel 文件。該程序可以從多個查詢中提取數(shù)據(jù),并將該數(shù)據(jù)發(fā)送到 Excel 文件,這對于除一個查詢之外的所有查詢都很好。給我?guī)韱栴}的那個從其查詢中提取了大約 350 個結(jié)果,這是查詢提取的最大數(shù)量。當(dāng)我在 Eclipse 中創(chuàng)建 excel 文件時,它只是按照預(yù)期創(chuàng)建了一個 excel 文件。然而,如果我將程序轉(zhuǎn)換為 JAR 文件并使用相同的查詢創(chuàng)建一個 excel 文件,該 excel 文件會被分成大約 5 個不同的 excel 文件,每個文件大約包含 50-60 個結(jié)果。我對其他 SQL 查詢使用了相同的基本代碼,并且運行得很好,這是我第一次遇到這個特殊問題。這是我寫入excel文件的代碼。從 SQL 搜索獲取的數(shù)據(jù)存儲在 13 個不同的列表中,sql 搜索中的每一列都有一個列表。該代碼獲取今天的日期和時間并將其添加到文件標(biāo)題中。首次創(chuàng)建 Excel 文件時,tableMade 將設(shè)置為 false,因為添加到 Excel 文件的第一個內(nèi)容是列名稱。如果未設(shè)置為 false,則 writeToExcel 每次向 Excel 文件添加數(shù)據(jù)時都會添加列名稱。public static void writeToExcel(String a, String b, String c, String d,        String e, String f, String g, String h, String i,        String j, String k, String l, String m){    try{//sends data from toExcel to an excel file        Date date2 = Calendar.getInstance().getTime();        DateFormat dateFormat = new SimpleDateFormat("yyyy_MM_dd_HH_mm_ss");         String strDate = dateFormat.format(date2);//above creates title date/time        String fileName = "Date "+ strDate + ".csv";//creates title: Data_For_yyyy_MM_dd_HH_mm_SS        FileOutputStream fos = new FileOutputStream(fileName,true);//creates new excel file         PrintWriter pw = new PrintWriter(fos);        if(tableMade == false){            pw.println(a + "," + b + "," +c+ "," +d+ "," +e        + "," +f+ "," +g+ "," +h+ "," +i+ "," +j+ "," +k+ "," +l+"'"+m+ "\t");            tableMade = true;//writes to excel file        }        pw.println(a + "," + b + "," +c+ "," +d+ "," +e        + "," +f+ "," +g+ "," +h+ "," +i+ "," +j+ "," +k+ "," +l+"'"+m+ "\t");        pw.close();        System.out.println(fileName + " was created");     }    catch(FileNotFoundException ex){        System.out.println("Write to excel failed");     }}這是調(diào)用 writeToExcel 的按鈕的代碼。按下后,將運行此代碼,創(chuàng)建 Excel 文件。該代碼同時迭代 13 個列表中的每一個,將每個列表中當(dāng)前指向的值作為參數(shù)傳遞給 writeToExcel。預(yù)期輸出是 1 個包含所有查詢?nèi)掌诘?Excel 文件,但是從 JAR 文件運行時的實際輸出是 5-6 個 Excel 文件,每個文件包含一塊數(shù)據(jù)。
查看完整描述

1 回答

?
眼眸繁星

TA貢獻1873條經(jīng)驗 獲得超9個贊

由于您將時間戳定義為秒,因此您的多個 CSV 文件的文件名可能具有不同的時間戳:


Date date2 = Calendar.getInstance().getTime();

DateFormat dateFormat = new SimpleDateFormat("yyyy_MM_dd_HH_mm_ss"); 

String strDate = dateFormat.format(date2);

每次執(zhí)行很長的循環(huán)時,可能會經(jīng)過數(shù)秒,因此會生成多個逗號分隔值 (CSV) 文件(不是二進制類型的 Excel 文件 –.xls、.xlsx、.xlsm、.xlsb)。將時間戳調(diào)整為分鐘或小時,所有結(jié)果可能包含在一個 CSV 文件中。


DateFormat dateFormat = new SimpleDateFormat("yyyy_MM_dd_HH_mm"); 

或者,在方法外部定義文件名并循環(huán)以在單擊按鈕時使用時間戳:


Date date2 = Calendar.getInstance().getTime();

DateFormat dateFormat = new SimpleDateFormat("yyyy_MM_dd_HH_mm_ss"); 

String strDate = dateFormat.format(date2);              

String fileName = "Date "+ strDate + ".csv";


for(int i = 0; i < list1.size(); i++) {

     writeToExcel(...);                    // REMOVE fileName FROM INSIDE METHOD

}


查看完整回答
反對 回復(fù) 2023-09-20
  • 1 回答
  • 0 關(guān)注
  • 109 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號