Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/357.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在java中使用字体格式将XLSX文件转换为CSV_Java_Excel_Csv_Apache Poi_Xlsx - Fatal编程技术网

如何在java中使用字体格式将XLSX文件转换为CSV

如何在java中使用字体格式将XLSX文件转换为CSV,java,excel,csv,apache-poi,xlsx,Java,Excel,Csv,Apache Poi,Xlsx,我正在尝试将xls文件转换为csv文件。我的java代码正确地转换文本。但我没有得到任何字体格式和其他格式。 那么,如何在CSV(在excel中打开)文件中获取字体格式呢 公共类XlsxtoCSV{ 公共静态void main(字符串[]args)引发异常{ FileInputStream input_document=newfileinputstream(新文件(“/home/blackpearl/Downloads/File.xlsx”); HSSFWorkbook my_xls_工作簿=新

我正在尝试将xls文件转换为csv文件。我的java代码正确地转换文本。但我没有得到任何字体格式和其他格式。 那么,如何在CSV(在excel中打开)文件中获取字体格式呢

公共类XlsxtoCSV{
公共静态void main(字符串[]args)引发异常{
FileInputStream input_document=newfileinputstream(新文件(“/home/blackpearl/Downloads/File.xlsx”);
HSSFWorkbook my_xls_工作簿=新的HSSFWorkbook(输入文档);
HSSFSheet my_sheet=my_xls_工作簿。getSheetAt(0);
迭代器rowIterator=我的工作表。迭代器();
FileWriter my_csv=新的FileWriter(“/home/blackpearl/Downloads/Newfile.csv”);
CSVWriter my_csv_输出=新CSVWriter(my_csv);
while(roweiterator.hasNext()){
行=行迭代器。下一步();
int i=0;//字符串数组
字符串[]csvdata=新字符串[20];
迭代器cellIterator=row.cellIterator();
while(cellIterator.hasNext()){
Cell Cell=cellIterator.next();//获取单元格
开关(cell.getCellType()){//标识单元格类型
case Cell.Cell\u类型\u字符串:
csvdata[i]=cell.getStringCellValue();
打破
}
i=i+1;
}
my_csv_output.writeNext(csvdata);
}
System.out.println(“文件导入”);
my_csv_output.close();//关闭csv文件
input_document.close();//关闭xlsx文件
}
}

CSV代表逗号分隔的值。其实很简单。它是文本,值之间用逗号分隔(在某些版本中,用分号或其他分隔符分隔)。它基本上是一个纯文本文件,可以用文本编辑器打开和编辑。无法在该文件格式中包含格式信息。

CSV代表逗号分隔的值。其实很简单。它是文本,值之间用逗号分隔(在某些版本中,用分号或其他分隔符分隔)。它基本上是一个纯文本文件,可以用文本编辑器打开和编辑。无法在该文件格式中包含格式信息。

是纯文本格式。它无法存储任何格式。是纯文本格式。它无法存储任何格式。
public class XlsxtoCSV {

        public static void main(String[] args) throws Exception{
             FileInputStream input_document = new FileInputStream(new File("/home/blackpearl/Downloads/file.xlsx"));
             HSSFWorkbook my_xls_workbook = new HSSFWorkbook(input_document); 
             HSSFSheet  my_worksheet = my_xls_workbook.getSheetAt(0); 

             Iterator<Row> rowIterator = my_worksheet.iterator();
             FileWriter my_csv=new FileWriter("/home/blackpearl/Downloads/Newfile.csv");
             CSVWriter my_csv_output=new CSVWriter(my_csv); 
             while(rowIterator.hasNext()) {
                     Row row = rowIterator.next(); 
                     int i=0;//String array
                     String[] csvdata = new String[20];
                     Iterator<Cell> cellIterator = row.cellIterator();
                             while(cellIterator.hasNext()) {
                                     Cell cell = cellIterator.next(); //Fetch CELL
                                     switch(cell.getCellType()) { //Identify CELL type
                                     case Cell.CELL_TYPE_STRING:
                                             csvdata[i]= cell.getStringCellValue();                                              
                                             break;
                                     }
                                     i=i+1;
                             }
             my_csv_output.writeNext(csvdata);
             }
             System.out.println("file imported");
             my_csv_output.close(); //close the CSV file
             input_document.close(); //close xlsx file
     }
}