传递HTML代码作为输入

时间:2017-04-27 20:29:31

标签: java html

我想传递html代码作为输入。我使用下面的代码来传递输入,但它只是读取第一个html标记。其余的字符串被忽略。我将对代码执行更多操作,而不仅仅是打印输入。

示例输入

<HTML>
<HEAD>
<TITLE>Your Title Here</TITLE>
</HEAD>
<BODY BGCOLOR="FFFFFF">
<CENTER><IMG SRC="clouds.jpg" ALIGN="BOTTOM"> </CENTER>
<HR>
<a href="http://somegreatsite.com">Link Name</a>
is a link to another nifty site
<H1>This is a Header</H1>
<H2>This is a Medium Header</H2>
Send me mail at <a href="mailto:support@yourcompany.com">
support@yourcompany.com</a>.
<P> This is a new paragraph!
<P> <B>This is a new paragraph!</B>
<a href="http://somegreatsite.com">Link Name</a>
<BR> <B><I>This is a new sentence without a paragraph break, in bold italics.</I></B>
<HR>
</BODY>
</HTML>

我的代码

 public class testsolution {
    public static void main(String args[])
    {
        String url_input = null;
        Scanner s = new Scanner(System.in);

        while ( s.hasNextLine()){
            url_input = s.nextLine();

        }
        System.out.println(url_input);
    }
}

我也试过下面的代码,但它也无法正常工作

String url_input = null;
        Scanner s = new Scanner(System.in);
        if ( s.hasNextLine()){
            url_input = s.nextLine();

        }

        System.out.println(url_input);

我刚收到<HTML>作为输出。我想传递整个代码。

1 个答案:

答案 0 :(得分:3)

你的问题是你只是在读第一行。你需要有一个循环来继续阅读,直到你到达输入结束:

String url_input = null;
Scanner s = new Scanner(System.in);

while ( s.hasNextLine()){
    url_input = s.nextLine();
    System.out.println(url_input);
}

注意我是如何用if循环替换while语句的。另一个变化是你的System.out.println应该与阅读一起:如果你读了一行,那就打印出来。