Java I/O操作路径中的每个文件
我有一个HTML帮助系统,我需要转换为SharePoint。最耗时的两个项目是更改文档链接和收集元数据。然而,我很幸运,因为这些数据很容易访问。每个文件都是HTML文档,简化如下:Java I/O操作路径中的每个文件,java,filesystems,read-write,Java,Filesystems,Read Write,我有一个HTML帮助系统,我需要转换为SharePoint。最耗时的两个项目是更改文档链接和收集元数据。然而,我很幸运,因为这些数据很容易访问。每个文件都是HTML文档,简化如下: <body> <!--- Metadata follows Procedure Name: my document Procedure Number: xxxxx Use: freeform text explaining when procdure is used
<body>
<!--- Metadata follows
Procedure Name: my document
Procedure Number: xxxxx
Use: freeform text explaining when procdure is used
Revision Date: xx/xx/xx
By: responsible party for revision
<!--- end metadata
<h1>Procedure Name<\h1>
<p>procedure background and narrative, with links, as needed, to other documents at \\documentation-server\path\document-name.html
<\body>
如果您使用Java7,FileVisitor接口使您能够非常轻松地遍历文件树。请参见示例
您可以重写visitFile
方法来处理文件,例如(未测试):
如果您使用Java7,FileVisitor接口使您能够非常轻松地遍历文件树。请参见示例
您可以重写visitFile
方法来处理文件,例如(未测试):
以及:
至少这是最基本的想法。异常处理由您负责(
以及:
至少这是最基本的想法。异常处理由您自己负责(;您需要html解析器-。然后链接每个文档,它将执行您想要执行的操作。您需要html解析器-。然后链接每个文档,它将执行您想要执行的操作。这似乎有点违反直觉,但java中的文件
对象也表示目录
您可以通过执行以下操作来检查它是否为目录:
file.isDirectory()
如果是,您可以列出所有文件并相应地处理它们:
for(File f : file.listFiles()){
handle(f);
}
这似乎有点违反直觉,但java中的文件
对象也表示目录
您可以通过执行以下操作来检查它是否为目录:
file.isDirectory()
如果是,您可以列出所有文件并相应地处理它们:
for(File f : file.listFiles()){
handle(f);
}
您可以编写一个java程序来处理一个文件,然后使用find和xargs在任意多个目标上执行它。您可以编写一个java程序来处理一个文件,然后使用find和xargs在任意多个目标上执行它。您还可以使用:file.listFiles(新的后缀文件过滤器(“html”))对于仅处理html文件,您还可以使用:file.listFiles(新的后缀文件过滤器(“html”))来仅处理html文件
for(File f : file.listFiles()){
handle(f);
}