// Counter. java: A bean for reading and writing files
Import java. io .*;
Public class counter extends Object {
Private String currentRecord = null; // variable for saving text
Private BufferedReader file; // BufferedReader object, used to read file data
Private String path; // complete file path name
Public counter (){
}
// The ReadFile method is used to read the data in the file filePath and return the data.
Public String ReadFile (String filePath) throws FileNotFoundException
{
Path = filePath;
// Create a new BufferedReader object
File = new BufferedReader (new FileReader (path ));
String returnStr = null;
Try
{
// Read a row of data and save it to the currentRecord variable
CurrentRecord = file. readLine ();
}
Catch (IOException e)
{// Handle errors
System. out. println ("Data reading error .");
}
If (currentRecord = null)
// If the file is empty
ReturnStr = "no record ";
Else
{// The file is not empty.
ReturnStr = currentRecord;
}
// Return the data to read the file
Return returnStr;
}
// The ReadFile method is used to write the counter + 1 data to the filePath of the text file.
// To increase the count
Public void WriteFile (String filePath, String counter) throws FileNotFoundException
{
Path = filePath;
// Convert counter to int type and add one
Int Writestr = Integer. parseInt (counter) + 1;
Try {
// Create a PrintWriter object for writing data to a file
PrintWriter pw = new PrintWriter (new FileOutputStream (filePath ));
// Print the integer Writestr in text format
Pw. println (Writestr );
// Clear the PrintWriter object
Pw. close ();
} Catch (IOException e ){
// Handle errors
System. out. println ("file writing error" + e. getMessage ());
}
}
}
In the inventory file, the file content is a number 0. You can directly enter the address in the browser to see the counter, and refresh the browser to see the changing numbers.
(If the file cannot be found at runtime, note readfilena in test.jspand run the scripts. Then, the lyfcount.txt file is automatically created and runs properly .)