Java2HTML改造手记(5)

类别:Java 点击:0 评论:0 推荐:
Java2HTML改造手记(5)

 

 

接下来就是我们的重头戏了.让这个参数起作用.

在java2html.java main方法中最后调用了

java2html.buildJava2HTML();

那么我们就从这里继续吧.

 

    public boolean buildJava2HTML()

        throws Exception

    {

        O01049();

        O01050 o01050 = new O01050(O01044);

        if(O01043 == null)

        {

            setJavaDirectorySource(new String[] {

                "."

            });

        }

        O01052 o01052 = new O01052(O01043, O01045, O01040, O01041, O01012, O01014, o01050);

        if(!O01042)

        {

            O01052.O01054(O01045, o01052, O01002);

        }

        o01052.O01055();

        return true;

    }

先看看O01049()作了什么:

    private void O01049()

        throws IOException

    {

        (new File(O01045)).mkdirs();

        File file = null;

        FileWriter filewriter = null;

        file = new File(O01045 + File.separator + "stylesheet.css");

        filewriter = new FileWriter(file);

        filewriter.write(O07.O0998());

        filewriter.close();

        System.out.println("Created " + file.getAbsolutePath());

        if(!O01042)

        {

            File file1 = new File(O01045 + File.separator + "front.html");

            FileWriter filewriter1 = new FileWriter(file1);

        filewriter1.write(O07.O0999());

            filewriter1.close();

            System.out.println("Created " + file1.getAbsolutePath());

            file1 = new File(O01045 + File.separator + "index.html");

            filewriter1 = new FileWriter(file1);

            filewriter1.write(O07.O01001(O01002));

            filewriter1.close();

        }

    }

原来这里生成了几个基本的页面和样式表.而所需的资源是从O07中读取出来的,看来这个文件是重点了.不过这个方法也要修改一下,在输出html文件的时候应该使用用户指定的属性,既然资源是从O07出来的,那么给O07也添加一个encoding属性吧.

//O07.java

 

static String s2;

    public static void setEncoding(String str){

    s2=str;

    }

 

//java2html.java

    private void O01049()

        throws IOException

    {

        (new File(O01045)).mkdirs();

        File file = null;

        FileWriter filewriter = null;

        file = new File(O01045 + File.separator + "stylesheet.css");

        filewriter = new FileWriter(file);

        //modify

        filewriter.write(new String(O07.O0998().getBytes(encoding)));

        filewriter.close();

        System.out.println("Created " + file.getAbsolutePath());

        if(!O01042)

        {

            //写了front.html文件,资源是从O07读取的.原来O07是一个资源文件

//那么我们也给O07添加一个Encoding属性吧.

            O07.setEncoding(encoding);

            File file1 = new File(O01045 + File.separator + "front.html");

            FileWriter filewriter1 = new FileWriter(file1);

            //编码处理

            filewriter1.write(new String(O07.O0999().getBytes(encoding)));

            filewriter1.close();

            System.out.println("Created " + file1.getAbsolutePath());

            file1 = new File(O01045 + File.separator + "index.html");

            filewriter1 = new FileWriter(file1);

            //编码处理

            filewriter1.write(new String((O07.O01001(O01002)).getBytes(encoding)));

            filewriter1.close();

        }

    }

 

让我们回到buildjava2html方法中,看到:

O01052 o01052 = new O01052(O01043, O01045, O01040, O01041, O01012, O01014, o01050);

原来用户参数都是在这里传送进去的,那么把我们的参数也送进取吧.

O01052 o01052 = new O01052(O01043, O01045, O01040, O01041, O01012, O01014, o01050,encoding);

然后在O01052中添加:

private static String encoding;

并把它的构造函数修改一下:

public O01052(String as[], String s, int i, int j, boolean flag, boolean flag1, O01050 o01050,String s1)

    {

        O0106 = new O040(System.in);

        for(int k = 0; k < as.length; k++)

        {

            O01097(as[k]);

        }

 

        O01045 = s;

        O01040 = i;

        O01041 = j;

        O01012 = flag;

        O01014 = flag1;

        O01051 = o01050;

        encoding=s1;

    }

 

欲知后事如何,且听下回分解.

本文地址:http://com.8s8s.com/it/it17542.htm