public final class FileUtil extends Object
| 构造器和说明 |
|---|
FileUtil() |
| 限定符和类型 | 方法和说明 |
|---|---|
static void |
append(String fileName,
Collection<String> contents)
按行追加内容
|
static void |
deleteFile(String path)
递归删除文件夹以及下面所有的文件
|
static void |
downloadPagesToDisk(Page page)
在本地磁盘生成页面
|
static HttpProxy |
formatProxy(String proxyString)
将Proxy字符串解析成代理对象
|
static String |
generatePageFileName(String url,
String suffix)
下载的网页文件名规则
此规则是在生成文件名时将url进行编码,然后去除其中的一些操作系统 不支持的特殊字符:尖括号、斜杠、竖杠、分号、星号、问号,否则生成的文件名会出错 默认生成的文件名是带url的,如果不想带可以将其过滤掉会更简洁,但是 人为发现不了某个资源(js或css等)文件是属于哪个(php或jsp)页面的 |
static String |
generateResourceName(String url,
String suffix)
下载的资源命名规则:与页面命名类似,不同的是url后跟的参数全部删除掉,
因为大多数页面都是动态,后面加上参数会代表不同的页面,而资源文件则不同,根本不需要
注意:有些资源文件是一个页面经过跳转后的资源文件,比如www.aa.com/cc.php===www.aa.com/img.jpg
|
static String |
getSystemAbsolutePath(String classpath)
获取系统绝对路径
将配置文件转换为爬虫系统的绝对路径,将classpath:/conf/user_agent转换成/opt/work/xxx/conf/user_agent |
static boolean |
isExistContont(String filename)
判断文件是否为空,是否有内容
|
static boolean |
isExistsDiskFile(String fileName,
long fileSize)
判断文件是否已经存在磁盘上,有的话就无需下载
|
static String |
makeDiskDir(String diskDir)
在磁盘上创建下载、索引文件夹
|
static void |
makeDiskFile(String filename)
生成文件夹以及以下的文件
|
static void |
makeDiskFile(String fileName,
long fileSize)
事先创建指定大小的空内容的文件
|
static List<HttpProxy> |
readHttpProxyFile(String httpProxyFile)
读取http代理文件转换为HttpProxy对象到内存中
http_proxy文件的格式是ip:port或者ip:port@username:password
|
static List<String> |
readUserAgentFile(String userAgentFile)
读取User Agent文件到内存中
|
static void |
removeLine(String file,
String content)
删除文件中的某行内容
|
static void |
writeBigFileToDisk(String fileName,
Long contentLength,
InputStream content)
下载大文件到磁盘上
|
static void |
writeFileToDisk(String fileName,
byte[] content)
往硬盘上写文件
|
public static List<String> readUserAgentFile(String userAgentFile)
userAgentFile - UserAgent文件public static String getSystemAbsolutePath(String classpath)
classpath - Stringpublic static List<HttpProxy> readHttpProxyFile(String httpProxyFile)
httpProxyFile - Stringpublic static HttpProxy formatProxy(String proxyString)
proxyString - 代理字符串public static boolean isExistContont(String filename)
filename - Stringpublic static String makeDiskDir(String diskDir)
diskDir - Stringpublic static void makeDiskFile(String filename)
filename - Stringpublic static void append(String fileName, Collection<String> contents)
fileName - Stringcontents - Collectionpublic static void removeLine(String file, String content)
file - Stringcontent - Stringpublic static void downloadPagesToDisk(Page page)
page - Pagepublic static void writeFileToDisk(String fileName, byte[] content)
fileName - Stringcontent - byte[]public static String generatePageFileName(String url, String suffix)
url - Stringsuffix - 文件后缀名public static String generateResourceName(String url, String suffix)
url - Stringsuffix - Stringpublic static void makeDiskFile(String fileName, long fileSize)
fileName - StringfileSize - longpublic static boolean isExistsDiskFile(String fileName, long fileSize)
fileName - StringfileSize - longpublic static void writeBigFileToDisk(String fileName, Long contentLength, InputStream content)
fileName - StringcontentLength - Longcontent - InputStreampublic static void deleteFile(String path)
path - StringCopyright © 2018. All rights reserved.