Esempio n. 1
0
    // Read instructions from a file

    public static int[] readfile(string filename)
    {
        ArrayList <Int32> rawprogram = new ArrayList <Int32>();
        Reader            inp        = new FileReader(filename);
        StreamTokenizer   tstream    = new StreamTokenizer(inp);

        tstream.parseNumbers();
        tstream.nextToken();
        while (tstream.ttype == StreamTokenizer.TT_NUMBER)
        {
            rawprogram.add(new Int32((int)tstream.nval));
            tstream.nextToken();
        }
        inp.close();
        int programsize = rawprogram.size();

        int[] program = new int[programsize];
        for (int i = 0; i < programsize; i++)
        {
            program[i] = ((Int32)(rawprogram.get(i))).intValue();
        }
        return(program);
    }
        protected internal virtual string[] parseMessage(string message)
        {
            ArrayList       arrayList       = new ArrayList(20);
            StreamTokenizer streamTokenizer = new StreamTokenizer(new StringReader(message));

            streamTokenizer.resetSyntax();
            streamTokenizer.whitespaceChars(0, 32);
            streamTokenizer.wordChars(33, 255);
            streamTokenizer.quoteChar(34);
            streamTokenizer.quoteChar(34);
            streamTokenizer.commentChar(35);
            for (;;)
            {
                try
                {
                    int num = streamTokenizer.nextToken();
                    if (num == -3)
                    {
                        arrayList.add(streamTokenizer.sval);
                    }
                    else if (num == 39 || num == 34)
                    {
                        arrayList.add(streamTokenizer.sval);
                    }
                    else
                    {
                        if (num != -2)
                        {
                            break;
                        }
                        [email protected]("Unexpected numeric token!");
                    }
                }
                catch (IOException)
                {
                    break;
                }
            }
            return((string[])arrayList.toArray(new string[arrayList.size()]));
        }