0

HTML結果ファイル(results1.html、results2.html ...)を含むフォルダー(ResultsDir)があります。ResultsDir からのすべての結果ファイルへのリンクを含む 1 つの index.html ファイルを準備したいと考えています。

私が使用しているResultsDirのリストファイルの場合:

<fileset id="myfileset" dir="ResultsDir">
<include name="*.html" />
</fileset>
<pathconvert pathsep="&lt;BR&gt;" property="htmls" refid="myfileset" targetos="windows"/>
<echo file="ResultsDir/index.html_temp" append="false" >${htmls} </echo>
<replace file="ResultsDir/index.html_temp" token="${basedir}\" value="" />

結果として、フォルダー内のファイルのリストを含むインデックス html の本体部分 (index.html_temp) があります。しかし、各行をコピーして、各行に html(a href) タグを追加することは今では熱くありません。

concatだけで追加する上下のindex.htmlページ。

<concat destfile = "ResultsDir/index.html" >
<filelist dir = "ResultsDir " >
<file name="top.html_temp" />   
<file name="index.html_temp" />
<file name="bottom.html_temp" />
</filelist>
</concat>

よろしくクリス

4

1 に答える 1

0

これを行うには、スクリプト言語を使用します。グルーヴィーをお勧めします:

├── build.xml
└── ResultsDir
    ├── data1.html
    ├── data2.html
    ├── data3.html
    ├── data4.html
    ├── data5.html
    └── index.html

build.xml

<project name="demo" default="build-index">

    <target name="bootstrap">
        <mkdir dir="${user.home}/.ant/lib"/>
        <get dest="${user.home}/.ant/lib/groovy-all.jar" src="http://search.maven.org/remotecontent?filepath=org/codehaus/groovy/groovy-all/2.1.7/groovy-all-2.1.7.jar"/>
    </target>

    <target name="build-index">
        <taskdef name="groovy" classname="org.codehaus.groovy.ant.Groovy"/>

        <fileset id="myfileset" dir="ResultsDir" includes="*.html" excludes="index.html"/>

        <groovy>
            import groovy.xml.MarkupBuilder

            new File("ResultsDir/index.html").withWriter { writer ->
               new MarkupBuilder(writer).html {
                  head {
                     title("Results index")
                  }
                  body {
                     ul {
                        project.references.myfileset.each {
                           def file = new File(it.toString())
                           li {
                              a(href: file.toURI(), file.name)
                          }
                        }
                     }
                  }
               }
            }
        </groovy>
    </target>

</project>

index.html

<html>
  <head>
    <title>Results index</title>
  </head>
  <body>
    <ul>
      <li>
        <a href='file:/home/mark/ResultsDir/data1.html'>data1.html</a>
      </li>
      <li>
        <a href='file:/home/mark/ResultsDir/data2.html'>data2.html</a>
      </li>
      <li>
        <a href='file:/home/mark/ResultsDir/data3.html'>data3.html</a>
      </li>
      <li>
        <a href='file:/home/mark/ResultsDir/data4.html'>data4.html</a>
      </li>
      <li>
        <a href='file:/home/mark/ResultsDir/data5.html'>data5.html</a>
      </li>
    </ul>
  </body>
</html>
于 2013-09-19T19:06:29.263 に答える