Save data in a file and email the file

Dear all,
I have 2 vi files:
1. one vi file can store data into a file when it runs and stopped
2. another vi can send a file out through email when it is run.
Is it possible for me to run the first vi and stop after one hour (to store data into A file), then run the second vi file and stop (to send A file through email), and then run the first vi again immediately after running the second vi? This is because I need to send out my data saved hourly through email and get my 1st vi to continue running through out the day.
Due to the file path for my first vi and the second vi are the same, I keep getting error as below when either 1 vi is not stopped.
Error 5 occurred at Open/Create/Replace File in Write Spreadsheet String.vi->Write To Spreadsheet File (DBL).vi
Please advice. Thanks.
Kim

Dear Ravens,
I tried to kill (remove) the event structure from my earlier code, but as I run it, I get the same error again- error 5.
I also tried to put time out value 200 at the timenode at the upper left of the event structure but the email part just never executed.
I searched thru the forum and found a several examples on state machine as attached. I tried the first attachment for my program but obviously I used the wrong one as you adviced. As for the other state machine examples that I downloaded, I couldn't figure out how to apply them for my case correctly. Can you advcice how can I implement state machine to get the results tat I need?... Pls gv me some clearer hints? 
Attachments:
QueuedStateMachineWithEvents.vi ‏49 KB
StandardStateMachine_2MOD.vi ‏19 KB
JKI State machine.vi ‏75 KB

Similar Messages

  • Code to pickup app.server file and Email the same!!!

    Hi,
    I need to write an ABAP code to pickup a file in application server and Email the same file to the intended receipients--
    Can i get the code pls?

    Hi Simran,
    Please search the forum. There are many sample codes available for reading data in application server and mail sending.
    User statements OPEN DATASET, READ DATASET and CLOSE DATA SET to get the application server data. Check F1 on these. You will come to know many interesting things.
    Below is the sample code for mail sending.
    DATA: li_reclist  TYPE STANDARD TABLE OF somlreci1,
          li_objpack  TYPE STANDARD TABLE OF sopcklsti1,
          li_content  TYPE STANDARD TABLE OF solisti1,
          lwa_reclist TYPE somlreci1,
          lwa_objpack TYPE sopcklsti1,
          lwa_content TYPE solisti1,
          lwa_doc     TYPE sodocchgi1,
          l_lines     TYPE i.
    REFRESH: li_reclist[], li_objpack[],
             li_content[].
    CLEAR: lwa_reclist, lwa_objpack,
           lwa_content, lwa_doc.
    lwa_reclist-receiver = "Give ur mail ID here.
    lwa_reclist-rec_type = 'U'.
    APPEND lwa_reclist TO li_reclist.
    "Here Loop at ur internal table and populate the data
    lwa_content = 'Please Check with your sales team for more details'.
    APPEND lwa_content TO li_content.
    CLEAR l_lines.
    DESCRIBE TABLE li_content LINES l_lines.
    READ TABLE li_content INTO lwa_content INDEX l_lines.
    lwa_doc-doc_size = ( l_lines - 1 ) * 255 + STRLEN( lwa_content ).
    lwa_doc-obj_langu  = 'E'.
    CONCATENATE 'Sales order' vbak-vbeln 'deleted.' INTO lwa_doc-obj_descr
             SEPARATED BY space.
    CLEAR lwa_objpack-transf_bin.
    lwa_objpack-head_start = 1.
    lwa_objpack-head_num = 0.
    lwa_objpack-body_start = 1.
    lwa_objpack-body_num = l_lines.
    lwa_objpack-doc_type = 'RAW'.
    APPEND lwa_objpack TO li_objpack.
    *Sending the mail
    CALL FUNCTION 'SO_NEW_DOCUMENT_ATT_SEND_API1'
      EXPORTING
        DOCUMENT_DATA                    = lwa_doc
    *   PUT_IN_OUTBOX                    = ' '
       COMMIT_WORK                      = 'X'
    * IMPORTING
    *   SENT_TO_ALL                      =
    *   NEW_OBJECT_ID                    =
      TABLES
        PACKING_LIST                     = li_objpack
    *   OBJECT_HEADER                    =
    *   CONTENTS_BIN                     =
       CONTENTS_TXT                     = li_content
    *   CONTENTS_HEX                     =
    *   OBJECT_PARA                      =
    *   OBJECT_PARB                      =
        RECEIVERS                        = li_reclist
    EXCEPTIONS
       TOO_MANY_RECEIVERS               = 1
       DOCUMENT_NOT_SENT                = 2
       DOCUMENT_TYPE_NOT_EXIST          = 3
       OPERATION_NO_AUTHORIZATION       = 4
       PARAMETER_ERROR                  = 5
       X_ERROR                          = 6
       ENQUEUE_ERROR                    = 7
       OTHERS                           = 8
    IF SY-SUBRC <> 0.
    * MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
    *         WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
    ENDIF.
    Thanks,
    Vinod.

  • Idoc- File scenario: Read a data field in IDOC and name the file with it

    Hi All,
    I am configuring an IDOC to File scenario.
    I have a requirement where I need to read one of the IDOC data field and use that as the name of the File.
    E.g: If the IDOC data field-1 = '123456', then I need to name the output file as '123456'.
    Is it possible to do this. Appreciate your help on same.
    Thanks
    Shirin

    Try this code..
    desired field from IDoc will be input parameter to UDF
    DynamicConfiguration conf = (DynamicConfiguration) container.getTransformationParameters().get(StreamTransformationConstants.DYNAMIC_CONFIGURATION);
    DynamicConfigurationKey key = DynamicConfigurationKey.create("http://sap.com/xi/XI/System/File","FileName");
    conf.put(key,a);  // a is input parameter
    String ourSourceFileName = conf.get(key);
    return  ourSourceFileName; 
    Also, check Adapter specific message attributes in file adapter, check  filename

  • Download a file and give the file name as default name while saving

    Hi folks
    I am facing a problem. I have jsp which fetchs the file name and it's location from the database.
    It can fetch many row's. Now i have provided a radio button, against each row, By clicking on it , the user selects the file to download.
    And clicks on download button, which call an action say "Download File".
    It's downloading the file successfully. But displaying the action name as default name while selecting the location to save the file on local machine.
    I want the file name which he opted to download, should get displayed as default name.

    Set it in the content disposition header.
    The downloadFile() snippet here might give some useful insights: http://balusc.xs4all.nl/srv/dev-jep-pdf.html

  • Need help for Scheduling a Spool file and FTP the file

    I have one requirement like below...
    1. Start Scheduling a job
    2. Generate a Spool file (.csv file)
    3. If Spool file generation is successful then start FTP the file
    Else End job
    4. After successful FTP process end the job.
    We need to create a log file also for this job.
    Can any body give some idea how will i proceed?
    Thanks in advance.

    Billy  Verreynne  wrote:
    BluShadow wrote:
    Chris' may be wrapped, but it includes the funky ability to query remote files directly in SQL due to it's use of pipelined functions. A feature I've also got in my own FTP package and very useful for monitoring logs on remote servers through our Apex applications. ;)Ditto - also rolled my own FTP package as doing wildcard file listing requires custom support depending on the type of FTP server you're dealing with. The text part of the responses differ (these are not RFC'ed) and makes parsing more complex than what it could have been.Yeah, the differing responses can be a pain, though fortunately they are far and few between. There was a bug in Chris' package in that it wasn't handling a two code response from a windows FTP server for one of the commands, but I emailed him and he fixed that. Not his fault, he didn't have a windows FTP server to test on at the time.
    FTP is a pretty straight forward protocol and easy to wrap a PL/SQL package around (using <i>UTL_TCP</i>).Absolutely. and the RFC details almost everthing you need to handle. It was quite quick to knock up a package, similar to the code hoek has linked to.
    I think there is a lot of common stuff that many of us do in this regard. Always wondered how well a proper GPL'ed open source project providing a PL/SQL development framework and libraries would do...I think there'd be a lot of arguments about what is the best way of doing things. :D

  • How to locate a phrase in a file and read the file after that location

    I have a text file with the following contents
    Previous date data.....[10,000 lines ]
    same as below but with earlier dates
    * ABC  AutoJournal Utility - Version 2.00 *
    Beginning Reportournal at (time): Tue May 04 18:07:46 IST 2010
    AutoJournal assigned updated records a timestamp of (server time):  *2010-05-04*  //THIS IS THE PHRASE  i am looking for
    #  Posted Date,           Policy,  Reason, Amount, Insured Name, Agent Name
    1) 2010-04-26 00:00:00.0, 7363496, GRSS, 10.0, KRASSNER W, BROOKS STEVEN E
    2) 2010-04-23 00:00:00.0, 4768200, GRSS, 0.0, STECKLER M, STECKLER GIBSON
    3) 2010-04-20 00:00:00.0, 7328358, GRSS, 4.0, LYON GREGO, WEST MICHAEL J
    4) 2010-04-20 00:00:00.0, 4754236, GRSS, 0.0, PEEBLES JA, HOFFMANN GABRIE
    5) 2010-04-22 00:00:00.0, 7363793, GRSS, 2.0, LAHAYE NAN, GONYEA MICHAEL
    6) 2010-04-26 00:00:00.0, 7360935, GRSS, 35.0, AMITAY NOA, WIESEL HENRYI need to locate the date and start reading the data for the current date only i.e Today's date
    Thus far i have done this....
    it's just the outline
    String srchDate="2010-05-04";
    BufferedReader bf=null;
                   try {
                          bf = new BufferedReader(new FileReader("C:\\File.log"));
                       int lineID = 0;  
                       Pattern pattern =  Pattern.compile(srchDate);  
                       Matcher matcher = null;  
                       String line =null;
                          while((line=bf.readLine())!=null){ 
                                 System.out.println(line);
                                    lineID++;  
                                    matcher = pattern.matcher(line);      //Will match the entire line against srchDate and will return false ...
                                    if( matcher.find()){  
                                        //do stuff...      //stuck here
                                          //get the line no..
                        } catch (Exception e) {
                             e.printStackTrace();
                        }     Some help on this would be very helpful...
    Thanks :)
    P.S:This needs to be done using java 1,4 only

    kevinaworkman wrote:
    RainaV wrote:
    kevinaworkman wrote:
    If I were you, I would split your problem up into smaller pieces.
    Write a method that reads a file into a String.This file is actually quiet huge i am not sure if this would work as the file will only grow in size in the future....How big is "quiet huge"? I wouldn't worry about optimization until you've actually encountered a problem.FYI The file size is 20MB ...
    >
    Write a method that figures out where in a String a substring occurs (hey, that one might be done for you already...).
    Write a method that returns a substring of a String, based on a start index and a length (something tells me this one might exist already too).
    Write a method that converts a String to the correct datatype.
    Regarding these steps i am not sure if i follow>>
    the lines you see 1)....
    2).... till last line say 800..
    I don't understand your question.I was wondering if your appraoch would be complicated but will give it a try...
    >
    Actually i thght i would just read one complete line and store that in an list and then write it to an excel sheet...Okay, and the steps I outlined would work for reading in one line at a time, as well. It's just one more step.
    i am unable to locate this phrase using regex so can you suggest something on that lines
    You're trying to find today's date? Why does that require a regular expression?I want to read the data after i have located today's date in the Text file so i need to locate it first but the code i posted doesn't work so i suggested if you can advice on the correction....as per my approach mentioned in the original post
    But if i do it your way then definately no need for regex i need to store all of it in a string and work woth sub strings so on,...

  • How  to   download the file and delete the file

    plz send me reply

    Hi Nagalakshmi,
    If you want to download a file on to the presentation server from your application then please have a look at the methods listed under the OO class CL_GUI_FRONTEND_SERVICES from transaction SE24 to perform similar operations as requested by you on files on presentation server.
    However if u are considering downloading and then deleting a file on the application server, then u would need commands like OPEN DATASET, TRANSFER and CLOSE and eventually DELETE DATASET.
    F1 on the commands should help you along.
    Hope this helps.
    Regards,
    Aditya

  • Read file and store the file into a string

    i want to read the file and copy it to a string.
    i wrote this code but don't know what to do next..
    please help me urgent.....
    File file_to_text = new File("c:\\wtgapp.xml");
    String wtgapp_string=new String();
    try
    BufferedInputStream stream = new BufferedInputStream(new FileInputStream(file_to_text));
    catch (FileNotFoundException file_error)
    JOptionPane.showMessageDialog(null, "FILE READ ERROR", "READ ERROR!",JOptionPane.INFORMATION_MESSAGE );
    System.exit(1);
    }

    BufferedReader reader = new BufferedReader(new FileReader(file_to_text));
    try
    while(reader.readLine() !=)
    wtgapp_string = wtgapp_string+ reader.readLine();
    System.out.println(wtgapp_string);
    i did this..
    but reader.readLine() != null
    didn't work.
    what shoud i write? to go to the end of file
    no it is 16.00pm in here i live in TURKIYE istanbul :)

  • Is it possible to save an iPhone back up and access the files later if needed?  I have a string of text sms and iMessages that I would like to save and then delete them from my phone.  Is this possible?

    I have a string of text sms and iMessages that I would like to save and then delete them from my phone, but gain access to them later if I need them.  I prefer to have the string with the date/time stamp vs copying and pasting into a doc or text file.  Is this possible?

    Not unless you buy an app that accesses data from an iTunes backup.  Check in the app store.

  • Export data in CSV and store the file in local drive

    Hi,
    Here is the requirements.
    Fetch the values from table (around 60000 records), and export them into CSV file and store the file in local drive.
    I have written servlet to to this and it is working fine expect saving the file in local drive. At the moment, it is asking to save as in local drive. i want to save the file automatically in particular path (/var/www/files/). Below is the code.
    String file = "CandidatesDetails" + sd + ".csv";
                        queryString = "select * from candidate where candidate.status='A'";
                        connection = ConnectionPoolHelper.getConnection();
                        response.setContentType("application/csv");
                        response.setHeader("content-disposition", "filename=" + file);
                        System.out.println("Query= " + queryString);
                        ps = connection.prepareStatement(queryString,
                                  ResultSet.TYPE_SCROLL_INSENSITIVE,
                                  ResultSet.CONCUR_READ_ONLY);
                        rs = ps.executeQuery();
                        datas = "CANDIDATE ID,CANDIDATE TITLE,FIRST NAME,LAST NAME,E-MAIL,NATIONALITY ID,NATIONALITY,COUNTRY ID,COUNTRY NAME,INDUSTRY ID,INDUSTRY DESCRIPTION,EXPERIENCE,DATE OF BIRTH,HEAR ABOUT US\n";
                        oout.write(datas);
                        String country = "";
                        String nationality = "";
                        String hearABtUs = "";
                        while (rs.next()) {
                             nationality = rs.getString(7);
                             if (nationality == null)
                                  nationality = "";
                             else if (nationality.equals("null"))
                                  nationality = "";
                             country = rs.getString(9);
                             if (country == null)
                                  country = "";
                             else if (country.equals("null"))
                                  country = "";
                             hearABtUs = rs.getString(14);
                             if (hearABtUs == null)
                                  hearABtUs = "";
                             else if (hearABtUs.equals("null"))
                                  hearABtUs = "";
                             else
                                  hearABtUs = hearABtUs.replaceAll(",", ";");
                             datas = rs.getInt(1) + "," + rs.getString(2) + ","
                                       + rs.getString(3) + "," + rs.getString(4) + ","
                                       + rs.getString(5) + "," + rs.getInt(6) + ","
                                       + nationality + "," + rs.getInt(8) + "," + country
                                       + "," + rs.getInt(10) + "," + rs.getString(11)
                                       + "," + rs.getString(12) + "," + rs.getString(13)
                                       + "," + hearABtUs + "\n";
                             oout.write(datas); Regards,
    Dongan.

    Here is the first few lines
    public void doGet(HttpServletRequest request, HttpServletResponse response)
                   throws ServletException, IOException {
              HttpSession session = request.getSession(true);
              String datas = "";
              PreparedStatement ps = null;
              ResultSet rs = null;
              String queryString = "";
              Connection connection;
              PrintWriter oout = response.getWriter();
              java.util.Date d = new java.util.Date();
              SimpleDateFormat dateformat = new SimpleDateFormat("dd-MMM-yyyy");
              String sd = dateformat.format(d);
              tryAt the moment, when i run http://localhost:8080/project/CandidatesDetail, it will ask me to save the file somewhere. I should manually mention the path to save the file. what i want is, it should automatically save it in the location C:\projects\files\.
    thanks.
    Regards,
    Dongan
    Edited by: Dongan on Oct 26, 2007 5:22 AM

  • Automatic Attach File and Email

    I know can do the following to have page opened as a word
    document. But how can I have, when opened as a word document be
    automatically emailed to email recepients as a word attachment
    without the user going through the file menu to attach and email
    the file?
    <cfheader name="Content-disposition" value="attachment;
    filename=InsertionOrder_#PartnerID#.doc" />
    <cfcontent type="application/msword"
    reset="yes"></cfcontent>

    eziokolo wrote:
    > I know can do the following to have page opened as a
    word document. But how can
    > I have, when opened as a word document be automatically
    emailed to email
    > recepients as a word attachment without the user going
    through the file menu to
    > attach and email the file?
    >
    > <cfheader name="Content-disposition"
    value="attachment;
    > filename=InsertionOrder_#PartnerID#.doc" />
    > <cfcontent type="application/msword"
    reset="yes"></cfcontent>
    >
    >
    very confused... who's emailing to who???
    do you want to email a word doc stored on your server to a
    user when a
    user requests to view the doc, or do you want a user to email
    a word doc
    from their computer to you when they are viewing it???
    if the former, just use cfmail with cfmailpart tags before
    your
    streaming code above to email the doc to anyone you want....
    in the latter case, you have no way of controlling it.
    Azadi Saryev
    Sabai-dee.com
    http://www.sabai-dee.com

  • VBScript to read the content of a .csv file and delete old files mentioned in the .csv

    I have a Windows 2003 file server.
    I have generated a report in .csv format, about the files which are older than 1 year.
    I need a VBScript to read the .csv file and delete the files which are enlisted there.
    Can someone please help me with this?

    Look into the "Learn" link above.  There are resources and instructions on how to write VBScript code.  Look into how to use the FileSystemObject.
    ¯\_(ツ)_/¯

  • Code for reading the and placing the file using java webservice

    Hi All,
    Can anybody can guide me on how to read a file and place the file using java.
    Let  me know if any code is available which has been completed using java.
    Regards,
    Rahul

    Hi,
    The "square" symbol that you are referring to is probably a CRLF (Carriage Return - Life Feed) Control Character.
    This is more commonly known as a "Enter" at the end of a line / sentence.
    To clean this character from strings in Java, please use:
    String patternStr = "(?m)$^|[\\r\\n]+\\z";
    String replaceStr = " ";
    Pattern pattern = Pattern.compile(patternStr);
    Matcher matcher = pattern.matcher(inputStr);
    return matcher.replaceAll(replaceStr);
    Hope that helps.
    Thanks.
    p256960.

  • Verizon Chat advises pdf attachment non-download from AOL email is a software problem and directs me to Apple Support. I see "can't access cellular data network" in an instant before the file's icon turns into the file's name.

    Verizon Chat advises pdf attachment non-download from AOL email is a software problem and directs me to Apple Support. I see "can't access cellular data network" in an instant before the file's icon is replaced by the file's name. In Inbox three emails in a row show there is an attachment. My iPad 3rd gen. runs 7.1.

    You have Acrobat Pro on your system. It will try to open PDFs, and of course it will fail. You must uninstall it. Then, you will need a PDF reader. So install Adobe Reader. That seems quite simple, but perhaps something is wrong. If anything goes wrong with these two steps (1) uninstall Acrobat Pro (2) install Adobe Reader, then please let us know the details.

  • (Urgent help needed) how to read txt file and store the data into 2D-array?

    Hi, I have a GUI which allow to choose file from the file chooser, and when "Read file" button is pressed, I want to show the array data into the textarea.
    The sample data is like this followed:
    -0.0007     -0.0061     0.0006
    -0.0002     0.0203     0.0066
    0     0.2317     0.008
    0.0017     0.5957     0.0008
    0.0024     1.071     0.0029
    0.0439     1.4873     -0.0003
    I want my program to scan through and store these data into 2D array.
    However for some reason, my source code issues errors, and I don't know what's wrong with it, seems to have a problem in StringTokenizer though. Can anybody help me?
    Thanks in advance.
    import java.io.*;
    import java.awt.*;
    import java.awt.event.*;
    import javax.swing.*;
    import java.util.StringTokenizer;
    public class FileReduction1 extends JFrame implements ActionListener{
    // GUI features
    private BufferedReader fileInput;
    private JTextArea textArea;
    private JButton openButton, readButton,processButton,saveButton;
    private JTextField textfield;
    private JPanel pnlfile;
    private JPanel buttonpnl;
    private JPanel buttonbar;
    // Other fields
    private File fileName;
    private String[][] data;
    private int numLines;
    public FileReduction1(String s) {
    super(s);
    // Content pane
         Container cp = getContentPane();
         cp.setLayout(new BorderLayout());     
    // Open button Panel
    pnlfile=new JPanel(new BorderLayout());
         textfield=new JTextField();
         openButton = new JButton("Open File");
    openButton.addActionListener(this);
    pnlfile.add(openButton,BorderLayout.WEST);
         pnlfile.add(textfield,BorderLayout.CENTER);
         readButton = new JButton("Read File");
    readButton.addActionListener(this);
         readButton.setEnabled(false);
    pnlfile.add(readButton,BorderLayout.EAST);
         cp.add(pnlfile, BorderLayout.NORTH);
         // Text area     
         textArea = new JTextArea(10, 100);
    cp.add(new JScrollPane(textArea),BorderLayout.CENTER);
    processButton = new JButton("Process");
    //processButton.addActionListener(this);
    saveButton=new JButton("Save into");
    //saveButton.addActionListener(this);
    buttonbar=new JPanel(new FlowLayout(FlowLayout.RIGHT));
    buttonpnl=new JPanel(new GridLayout(1,0));
    buttonpnl.add(processButton);
    buttonpnl.add(saveButton);
    buttonbar.add(buttonpnl);
    cp.add(buttonbar,BorderLayout.SOUTH);
    /* ACTION PERFORMED */
    public void actionPerformed(ActionEvent event) {
    if (event.getActionCommand().equals("Open File")) getFileName();
         if (event.getActionCommand().equals("Read File")) readFile();
    /* OPEN THE FILE */
    private void getFileName() {
    // Display file dialog so user can select file to open
         JFileChooser fileChooser = new JFileChooser();
         fileChooser.setFileSelectionMode(JFileChooser.FILES_ONLY);
         int result = fileChooser.showOpenDialog(this);
         // If cancel button selected return
         if (result == JFileChooser.CANCEL_OPTION) return;
    if (result == JFileChooser.APPROVE_OPTION)
         fileName = fileChooser.getSelectedFile();
    textfield.setText(fileName.getName());
         if (checkFileName()) {
         openButton.setEnabled(false);
         readButton.setEnabled(true);
         // Obtain selected file
    /* READ FILE */
    private void readFile() {
    // Disable read button
    readButton.setEnabled(false);
    // Dimension data structure
         getNumberOfLines();
         data = new String[numLines][];
         // Read file
         readTheFile();
         // Output to text area     
         textArea.setText(data[0][0] + "\n");
         for(int index=0;index < data.length;index++)
    for(int j=1;j<data[index].length;j++)
    textArea.append(data[index][j] + "\n");
         // Rnable open button
         openButton.setEnabled(true);
    /* GET NUMBER OF LINES */
    /* Get number of lines in file and prepare data structure. */
    private void getNumberOfLines() {
    int counter = 0;
         // Open the file
         openFile();
         // Loop through file incrementing counter
         try {
         String line = fileInput.readLine();
         while (line != null) {
         counter++;
              System.out.println("(" + counter + ") " + line);
    line = fileInput.readLine();
         numLines = counter;
    closeFile();
         catch(IOException ioException) {
         JOptionPane.showMessageDialog(this,"Error reading File",
                   "Error 5: ",JOptionPane.ERROR_MESSAGE);
         closeFile();
         System.exit(1);
    /* READ FILE */
    private void readTheFile() {
    // Open the file
    int row=0;
    int col=0;
         openFile();
    System.out.println("Read the file");     
         // Loop through file incrementing counter
         try {
    String line = fileInput.readLine();
         while (line != null)
    StringTokenizer st=new StringTokenizer(line);
    while(st.hasMoreTokens())
    data[row][col]=st.nextToken();
    System.out.println(data[row][col]);
    col++;
    row++;
    closeFile();
    catch(IOException ioException) {
         JOptionPane.showMessageDialog(this,"Error reading File",
                   "Error 5: ",JOptionPane.ERROR_MESSAGE);
         closeFile();
         System.exit(1);
    /* CHECK FILE NAME */
    /* Return flase if selected file is a directory, access is denied or is
    not a file name. */
    private boolean checkFileName() {
         if (fileName.exists()) {
         if (fileName.canRead()) {
              if (fileName.isFile()) return(true);
              else JOptionPane.showMessageDialog(null,
                        "ERROR 3: File is a directory");
         else JOptionPane.showMessageDialog(null,
                        "ERROR 2: Access denied");
         else JOptionPane.showMessageDialog(null,
                        "ERROR 1: No such file!");
         // Return
         return(false);
    /* FILE HANDLING UTILITIES */
    /* OPEN FILE */
    private void openFile() {
         try {
         // Open file
         FileReader file = new FileReader(fileName);
         fileInput = new BufferedReader(file);
         catch(IOException ioException) {
         JOptionPane.showMessageDialog(this,"Error Opening File",
                   "Error 4: ",JOptionPane.ERROR_MESSAGE);
    System.out.println("File opened");
    /* CLOSE FILE */
    private void closeFile() {
    if (fileInput != null) {
         try {
              fileInput.close();
         catch (IOException ioException) {
         JOptionPane.showMessageDialog(this,"Error Opening File",
                   "Error 4: ",JOptionPane.ERROR_MESSAGE);
    System.out.println("File closed");
    /* MAIN METHOD */
    /* MAIN METHOD */
    public static void main(String[] args) throws IOException {
         // Create instance of class FileChooser
         FileReduction1 newFile = new FileReduction1("File Reduction Program");
         // Make window vissible
         newFile.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
         newFile.setSize(500,400);
    newFile.setVisible(true);
    Java.lang.NullpointException
    at FileReductoin1.readTheFile <FileReduction1.java :172>
    at FileReductoin1.readFile <FileReduction1.java :110>
    at FileReductoin1.actionPerformed <FileReduction1.java :71>
    .

    1) Next time use the CODE tags. this is way too much unreadable crap.
    2) The problem is your String[][] data.... the only place I see you do anything approching initializing it is
    data = new String[numLines][];I think you want to do this..
    data = new String[numLines][3];anyway that's why it's blowing up on the line
    data[row][col]=st.nextToken();

Maybe you are looking for