diff --git a/.gitignore b/.gitignore index 336065509..66e403825 100644 --- a/.gitignore +++ b/.gitignore @@ -1,22 +1,23 @@ -*.class -test-output - -# Mobile Tools for Java (J2ME) -.mtj.tmp/ - -# Package Files # -*.jar -*.war -*.ear - -# virtual machine crash logs, see http://www.java.com/en/download/help/error_hotspot.xml -hs_err_pid* - -target -.project -.classpath - -sw-pom.xml -*.iml -test-config.xml -.idea +*.class +test-output + +# Mobile Tools for Java (J2ME) +.mtj.tmp/ + +# Package Files # +*.jar +*.war +*.ear + +# virtual machine crash logs, see http://www.java.com/en/download/help/error_hotspot.xml +hs_err_pid* + +target +.project +.classpath +.settings + +sw-pom.xml +*.iml +test-config.xml +.idea diff --git a/weixin-java-common/src/main/java/me/chanjar/weixin/common/util/fs/FileUtils.java b/weixin-java-common/src/main/java/me/chanjar/weixin/common/util/fs/FileUtils.java index d2ecc42a6..718f33e63 100644 --- a/weixin-java-common/src/main/java/me/chanjar/weixin/common/util/fs/FileUtils.java +++ b/weixin-java-common/src/main/java/me/chanjar/weixin/common/util/fs/FileUtils.java @@ -7,18 +7,25 @@ import java.io.InputStream; public class FileUtils { + /** * 创建临时文件 * @param inputStream * @param name 文件名 * @param ext 扩展名 + * @param tmpDirFile 临时文件夹目录 * @return * @throws IOException */ - public static File createTmpFile(InputStream inputStream, String name, String ext) throws IOException { + public static File createTmpFile(InputStream inputStream, String name, String ext, File tmpDirFile) throws IOException { FileOutputStream fos = null; try { - File tmpFile = File.createTempFile(name, '.' + ext); + File tmpFile; + if (tmpDirFile == null) { + tmpFile = File.createTempFile(name, '.' + ext); + } else { + tmpFile = File.createTempFile(name, '.' + ext, tmpDirFile); + } tmpFile.deleteOnExit(); fos = new FileOutputStream(tmpFile); int read = 0; @@ -43,5 +50,17 @@ public class FileUtils { } } } + + /** + * 创建临时文件 + * @param inputStream + * @param name 文件名 + * @param ext 扩展名 + * @return + * @throws IOException + */ + public static File createTmpFile(InputStream inputStream, String name, String ext) throws IOException { + return createTmpFile(inputStream, name, ext, null); + } } diff --git a/weixin-java-common/src/main/java/me/chanjar/weixin/common/util/http/MediaDownloadRequestExecutor.java b/weixin-java-common/src/main/java/me/chanjar/weixin/common/util/http/MediaDownloadRequestExecutor.java index dc7f28b4b..32a7c917c 100644 --- a/weixin-java-common/src/main/java/me/chanjar/weixin/common/util/http/MediaDownloadRequestExecutor.java +++ b/weixin-java-common/src/main/java/me/chanjar/weixin/common/util/http/MediaDownloadRequestExecutor.java @@ -25,6 +25,18 @@ import java.util.regex.Pattern; * */ public class MediaDownloadRequestExecutor implements RequestExecutor { + + private File tmpDirFile; + + public MediaDownloadRequestExecutor() { + super(); + } + + public MediaDownloadRequestExecutor(File tmpDirFile) { + super(); + this.tmpDirFile = tmpDirFile; + } + @Override public File execute(CloseableHttpClient httpclient, HttpHost httpProxy, String uri, String queryParam) throws WxErrorException, ClientProtocolException, IOException { @@ -59,7 +71,7 @@ public class MediaDownloadRequestExecutor implements RequestExecutor