06-20-2011, 01:20 PM
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.
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.
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.