2016-12-13 03:36:26 +00:00
|
|
|
package com.bytezone.diskbrowser.duplicates;
|
|
|
|
|
|
|
|
import java.io.File;
|
|
|
|
import java.io.FileWriter;
|
|
|
|
import java.io.IOException;
|
|
|
|
|
2016-12-13 04:24:34 +00:00
|
|
|
import javax.swing.JFileChooser;
|
2016-12-13 03:36:26 +00:00
|
|
|
import javax.swing.JTable;
|
|
|
|
|
2020-02-08 09:54:50 +00:00
|
|
|
// -----------------------------------------------------------------------------------//
|
|
|
|
class CSVFileWriter
|
|
|
|
// -----------------------------------------------------------------------------------//
|
2016-12-13 03:36:26 +00:00
|
|
|
{
|
2020-02-08 09:54:50 +00:00
|
|
|
// ---------------------------------------------------------------------------------//
|
|
|
|
static void write (DiskTableModel diskTableModel, JTable table)
|
|
|
|
// ---------------------------------------------------------------------------------//
|
2016-12-13 03:36:26 +00:00
|
|
|
{
|
|
|
|
String csvFile =
|
|
|
|
System.getProperty ("user.home") + File.separator + "DiskBrowser.csv";
|
|
|
|
|
|
|
|
FileWriter writer;
|
|
|
|
|
2016-12-13 04:24:34 +00:00
|
|
|
JFileChooser fileChooser = new JFileChooser ();
|
|
|
|
fileChooser.setSelectedFile (new File (csvFile));
|
|
|
|
int returnValue = fileChooser.showSaveDialog (null);
|
|
|
|
if (returnValue != JFileChooser.APPROVE_OPTION)
|
|
|
|
return;
|
|
|
|
|
|
|
|
File selectedFile = fileChooser.getSelectedFile ();
|
|
|
|
|
2016-12-13 03:36:26 +00:00
|
|
|
try
|
|
|
|
{
|
2016-12-13 04:24:34 +00:00
|
|
|
writer = new FileWriter (selectedFile);
|
2016-12-13 03:36:26 +00:00
|
|
|
writer.append (String
|
|
|
|
.format ("Path,Name,Type,Size,Duplicate Name, Duplicate Data, Checksum%n"));
|
|
|
|
|
|
|
|
for (int i = 0; i < table.getRowCount (); i++)
|
|
|
|
{
|
|
|
|
int actualRow = table.convertRowIndexToModel (i);
|
|
|
|
String line = diskTableModel.getCSV (actualRow);
|
|
|
|
writer.append (line);
|
|
|
|
}
|
|
|
|
|
|
|
|
writer.flush ();
|
|
|
|
writer.close ();
|
|
|
|
}
|
|
|
|
catch (IOException e)
|
|
|
|
{
|
|
|
|
e.printStackTrace ();
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|