JavaRanch Home    
 
This page:         last edited 23 October 2013         What's Changed?         Edit
READ ONLY

Code Barn Hello Server File   

You must turn on Java for applets to work.

Explanation of HelloServerFile applet

Number of files: 2 (HelloServerFile.class, and a text file named test.txt)

What it does: Gets the text from a text file on the server and displays each line from the text file on the screen. Applets can't actually *read* from the server, but the URL class allows an applet to GET text from a URL.

To GET text from a URL:

  1. Create a URL object which represents the URL of the text file
  2. Get an InputStream on that URL
  3. Read from the Stream

HelloServerFile does a very simple readLine on a JavaDoc:java.io.BufferedReader .

To display the text from the text file, HelloServerFile creates a unique Label object to display each line of text. This is just for an example of a way to dynamically generate components based on information in a text file. At compile-time, there was no way to know how many Labels would be needed.


Code


import java.applet.Applet;
import java.awt.FlowLayout;
import java.awt.Label;
import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.net.URL;

public class HelloServerFile extends Applet 
{

    public void init() 
    {
        // everything happens in init
        setLayout( new FlowLayoutFlowLayout.CENTER, 10005 ) );
        String line = null;

        try
        {
            // create a URL (the URL for the text file on the server) then open a stream
            URL textURL = new URL( getCodeBase() , "test.txt" ); 
            BufferedReader reader = new BufferedReadernew InputStreamReader( textURL.openStream() ) );
    
            // now read the lines one at a time 
            while ( ( line = reader.readLine() ) != null ) 
            {
                add( new Label( line ) );
            } // close while loop
    
            reader.close();
        } // close try
        catch ( Exception e ) 
        {
            e.printStackTrace();
        } 
    } // close init
// close applet    


CodeBarnApplets

JavaRanchContact us — Copyright © 1998-2014 Paul Wheaton