Curl Global Community
Page 5: Application: Reading Our Score Data - Printable Version

+- Curl Global Community (https://communities.curl.com)
+-- Forum: Tutorials (https://communities.curl.com/forumdisplay.php?fid=3)
+--- Forum: Public Training (https://communities.curl.com/forumdisplay.php?fid=4)
+---- Forum: Curl IDE Made Easy (https://communities.curl.com/forumdisplay.php?fid=6)
+----- Forum: Try 5: Reading Our Score Data (https://communities.curl.com/forumdisplay.php?fid=13)
+----- Thread: Page 5: Application: Reading Our Score Data (/showthread.php?tid=75)



Page 5: Application: Reading Our Score Data - ashimo - 06-20-2011

Application: Reading Our Score Data

We’ll read the data containing our scores, and then display it.

Create the 'Try 5-3' Project

Close the Try 5-2 project and then, from the IDE 'File' menu, select 'New Project'. In the 'New Project' dialog box, select “Applet Project” (1), input “Try5-3” (2), specify c:\Curl\lesson\Try5\03_score_file in the “Directory” field (3), set the API Version to 6.0 (4), and then click OK (5).



Inputting the Program

Copy the c:\Curl\Try5\03_score_file\score.txt file to the c:\Curl\lesson\Try5\03_score_file directory. Next, we’ll input the program. You can copy the program code below or use c:\Curl\Try5\03_score_file\start.curl and then paste it into the editor in the IDE.



Code:
{value
    let loc:Url = {url score.txt}
    let in:#TextInputStream
    let data-array:StringArray = {StringArray}
    let record-set:RecordSet = {RecordSet
                                   {RecordFields
                                       {RecordField name, domain = String},
                                       {RecordField age, domain = int},
                                       {RecordField score, domain = int}
                                   }
                               }
    
    {try
        set in = {read-open loc}
        {until in.end-of-stream? do
            {if-non-null line = {in.read-line} then
                {data-array.append {line.to-String}}
            }
        }
     catch e:IOException do
        {popup-message Error reading file}
        {output e.message}
     finally
        {if-non-null in then
            {in.close}
        }
    }
    
    {for data:String in data-array do
        let array:StringArray = {data.split split-chars = ,}
        {if array.size == 3 then
            {record-set.append
                {RecordData
                    name = array[0], age = {array[1].to-int}, score = {array[2].to-int}
                }
            }
        }
    }
    
    {RecordGrid
        record-source = record-set,
        width = 10cm,
        height = 3cm
    }
}

Save the File, and then Execute the Program

After inputting the code, save the file, and then execute the program. The following result will appear in your browser.