FileDocCategorySizeDatePackage
IOTest.javaAPI DocExample14566Wed Apr 05 23:01:48 BST 2000tuning.io

IOTest.java

// Decompiled by JAD v1.5.5.1. Copyright 1997-98 Pavel Kouznetsov.
// JAD Home Page:      http://web.unicom.com.cy/~kpd/jad.html
// Decompiler options: packimports(100) fieldsfirst 
// Source File Name:   IOTest.java

package tuning.io;

import java.io.BufferedInputStream;
import java.io.BufferedReader;
import java.io.DataInputStream;
import java.io.FileInputStream;
import java.io.FileReader;
import java.io.FilterInputStream;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.PrintStream;

public class IOTest
{

    static int nlines;
    static int tchars;
    public static final char MAP3[] = {
        '\200', '\201', '\202', '\203', '\204', '\205', '\206', '\207', '\210', '\211', 
        '\212', '\213', '\214', '\215', '\216', '\217', '\220', '\221', '\222', '\223', 
        '\224', '\225', '\226', '\227', '\230', '\231', '\232', '\233', '\234', '\235', 
        '\236', '\237', '\240', '\241', '\242', '\243', '\244', '\245', '\246', '\247', 
        '\250', '\251', '\252', '\253', '\254', '\255', '\256', '\257', '\260', '\261', 
        '\262', '\263', '\264', '\265', '\266', '\267', '\270', '\271', '\272', '\273', 
        '\274', '\275', '\276', '\277', '\300', '\301', '\302', '\303', '\304', '\305', 
        '\306', '\307', '\310', '\311', '\312', '\313', '\314', '\315', '\316', '\317', 
        '\320', '\321', '\322', '\323', '\324', '\325', '\326', '\327', '\330', '\331', 
        '\332', '\333', '\334', '\335', '\336', '\337', '\340', '\341', '\342', '\343', 
        '\344', '\345', '\346', '\347', '\350', '\351', '\352', '\353', '\354', '\355', 
        '\356', '\357', '\360', '\361', '\362', '\363', '\364', '\365', '\366', '\367', 
        '\370', '\371', '\372', '\373', '\374', '\375', '\376', '\377', 0, '\001', 
        '\002', '\003', '\004', '\005', '\006', '\007', '\b', '\t', '\n', '\013', 
        '\f', '\r', '\016', '\017', '\020', '\021', '\022', '\023', '\024', '\025', 
        '\026', '\027', '\030', '\031', '\032', '\033', '\034', '\035', '\036', '\037', 
        ' ', '!', '"', '#', '$', '%', '&', '\'', '(', ')', 
        '*', '+', ',', '-', '.', '/', '0', '1', '2', '3', 
        '4', '5', '6', '7', '8', '9', ':', ';', '<', '=', 
        '>', '?', '@', 'A', 'B', 'C', 'D', 'E', 'F', 'G', 
        'H', 'I', 'J', 'K', 'L', 'M', 'N', 'O', 'P', 'Q', 
        'R', 'S', 'T', 'U', 'V', 'W', 'X', 'Y', 'Z', '[', 
        '\\', ']', '^', '_', '`', 'a', 'b', 'c', 'd', 'e', 
        'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o', 
        'p', 'q', 'r', 's', 't', 'u', 'v', 'w', 'x', 'y', 
        'z', '{', '|', '}', '~', '\177'
    };

    public static void main(String args[])
    {
//        System.out.println(System.getProperties());
        try
        {
            unbufferedInputStream(args[0]);
            reset();
            bufferedInputStream(args[0]);
            reset();
            buffered8192InputStream(args[0]);
            reset();
            bufferedReader(args[0]);
            reset();
            myReader(args[0]);
            reset();
            myReader2(args[0]);
            reset();
            unbufferedInputStream(args[0]);
            reset();
            bufferedInputStream(args[0]);
            reset();
            buffered8192InputStream(args[0]);
            reset();
            bufferedReader(args[0]);
            reset();
            myReader(args[0]);
            reset();
            myReader2(args[0]);
            reset();
            return;
        }
        catch(Exception exception)
        {
            exception.printStackTrace();
        }
    }

    public static void reset()
    {
        nlines = 0;
        tchars = 0;
    }

    public static void doSomethingWith(char ac[], int i, int j)
    {
        nlines++;
        tchars += (j - i) + 1;
    }

    public static void doSomethingWith(String s)
    {
        nlines++;
        tchars += s.length();
    }

    public static void unbufferedInputStream(String s)
        throws Exception
    {
        DataInputStream datainputstream = new DataInputStream(new FileInputStream(s));
        long l = System.currentTimeMillis();
        String s1;
        while((s1 = datainputstream.readLine()) != null) 
            doSomethingWith(s1);

        l = System.currentTimeMillis() - l;
        datainputstream.close();
        System.out.println("Time for reading " + nlines + " lines (chars " + tchars + ") using unbufferedInputStream: " + l);
    }

    public static void bufferedInputStream(String s)
        throws Exception
    {
        DataInputStream datainputstream = new DataInputStream(new BufferedInputStream(new FileInputStream(s)));
        long l = System.currentTimeMillis();
        String s1;
        while((s1 = datainputstream.readLine()) != null) 
            doSomethingWith(s1);

        l = System.currentTimeMillis() - l;
        datainputstream.close();
        System.out.println("Time for reading " + nlines + " lines (chars " + tchars + ") using bufferedInputStream  : " + l);
    }

    public static void buffered8192InputStream(String s)
        throws Exception
    {
        DataInputStream datainputstream = new DataInputStream(new BufferedInputStream(new FileInputStream(s), 8192));
        long l = System.currentTimeMillis();
        String s1;
        while((s1 = datainputstream.readLine()) != null) 
            doSomethingWith(s1);

        l = System.currentTimeMillis() - l;
        datainputstream.close();
        System.out.println("Time for reading " + nlines + " lines (chars " + tchars + ") using buffered8KInputStream: " + l);
    }

    public static void bufferedReader(String s)
        throws Exception
    {
        BufferedReader bufferedreader = new BufferedReader(new FileReader(s));
        long l = System.currentTimeMillis();
        String s1;
        while((s1 = bufferedreader.readLine()) != null) 
            doSomethingWith(s1);

        l = System.currentTimeMillis() - l;
        bufferedreader.close();
        System.out.println("Time for reading " + nlines + " lines (chars " + tchars + ") using bufferedReader       : " + l);
    }

  public static void myReader(String string)
    throws IOException
  {
    //Do the processing myself, directly from a FileReader
    //But don