Java2HTML改造手记(5)

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;

    }

 

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

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值