mev-4.0.01/source/org/tigr/microarray/mev/cgh/CGHUtil/TableDataWriter.java

Code
Comments
Other
Rev Date Author Line
2 26 Feb 07 jari 1 /*
2 26 Feb 07 jari 2  * TableDataWriter.java
2 26 Feb 07 jari 3  *
2 26 Feb 07 jari 4  * Created on May 21, 2003, 11:44 PM
2 26 Feb 07 jari 5  */
2 26 Feb 07 jari 6
2 26 Feb 07 jari 7 package org.tigr.microarray.mev.cgh.CGHUtil;
2 26 Feb 07 jari 8
2 26 Feb 07 jari 9 import java.io.BufferedWriter;
2 26 Feb 07 jari 10 import java.io.File;
2 26 Feb 07 jari 11 import java.io.FileWriter;
2 26 Feb 07 jari 12 import java.io.IOException;
2 26 Feb 07 jari 13
2 26 Feb 07 jari 14 import javax.swing.JFileChooser;
2 26 Feb 07 jari 15 import javax.swing.table.TableModel;
2 26 Feb 07 jari 16
2 26 Feb 07 jari 17 /**
2 26 Feb 07 jari 18  *
2 26 Feb 07 jari 19  * @author  Adam Margolin
2 26 Feb 07 jari 20  * @author Raktim Sinha
2 26 Feb 07 jari 21  */
2 26 Feb 07 jari 22
2 26 Feb 07 jari 23 public class TableDataWriter {
2 26 Feb 07 jari 24
2 26 Feb 07 jari 25     /** Creates a new instance of TableDataWriter */
2 26 Feb 07 jari 26     public TableDataWriter() {
2 26 Feb 07 jari 27     }
2 26 Feb 07 jari 28
2 26 Feb 07 jari 29     public void writeTable(TableModel model){
2 26 Feb 07 jari 30         JFileChooser chooser = new JFileChooser();
2 26 Feb 07 jari 31         int returnVal = chooser.showOpenDialog(null);
2 26 Feb 07 jari 32         if(returnVal == JFileChooser.APPROVE_OPTION){
2 26 Feb 07 jari 33             File outputFile = chooser.getSelectedFile();
2 26 Feb 07 jari 34             String dataToWrite = getTextContents(model);
2 26 Feb 07 jari 35             writeDataToFile(dataToWrite, outputFile);
2 26 Feb 07 jari 36         }
2 26 Feb 07 jari 37     }
2 26 Feb 07 jari 38
2 26 Feb 07 jari 39     private String getTextContents(TableModel model){
2 26 Feb 07 jari 40         StringBuffer buffer = new StringBuffer();
2 26 Feb 07 jari 41         int i;
2 26 Feb 07 jari 42         for(i = 0; i < model.getColumnCount() - 1; i++){
2 26 Feb 07 jari 43             buffer.append(model.getColumnName(i) + "\t");
2 26 Feb 07 jari 44         }
2 26 Feb 07 jari 45         buffer.append("\n");
2 26 Feb 07 jari 46         for(i = 0; i < model.getRowCount(); i++){
2 26 Feb 07 jari 47             for(int j = 0; j < model.getColumnCount() - 1; j++){
2 26 Feb 07 jari 48                 buffer.append(model.getValueAt(i, j) + "\t");
2 26 Feb 07 jari 49             }
2 26 Feb 07 jari 50             buffer.append("\n");
2 26 Feb 07 jari 51         }
2 26 Feb 07 jari 52         return buffer.toString();
2 26 Feb 07 jari 53     }
2 26 Feb 07 jari 54
2 26 Feb 07 jari 55     private void writeDataToFile(String dataToWrite, File outputFile){
2 26 Feb 07 jari 56         try{
2 26 Feb 07 jari 57             BufferedWriter writer = new BufferedWriter(new FileWriter(outputFile));
2 26 Feb 07 jari 58             writer.write(dataToWrite);
2 26 Feb 07 jari 59             writer.close();
2 26 Feb 07 jari 60         }catch(IOException ioe){
2 26 Feb 07 jari 61             ioe.printStackTrace();
2 26 Feb 07 jari 62         }
2 26 Feb 07 jari 63     }
2 26 Feb 07 jari 64
2 26 Feb 07 jari 65 }