我需要使用Coldfusion \ Java在Windows服務器上創建一個包含多個文件的TAR文件。我發現了很多拆包的例子,但創建它們卻很少。我發現這個使用gzip向文件添加一些文本的例子,它可以工作,但我需要添加文件。我也不是100%肯定gzip和構建tarball是一樣的。該項目分配給我用很短的週轉和我紡紗我的車輪,從而在正確的方向上沒有任何幫助是極大的讚賞:在Windows服務器上使用Coldfusion Java創建一個TAR文件(tarball)
贏Server 2012中, 的ColdFusion 10, Java版本1.7.0_15
<cfset lineBreak = chr(13) & chr(10) />
<!--- open the sitemap file --->
<cfset tarFilePath = "#application.imageingFolder#DTSimages\Pending\tiff.gz" />
#tarFilePath#
<!--- create streams --->
<cfset outputStream = CreateObject("java", "java.io.FileOutputStream").Init(
CreateObject("java","java.io.File").Init(tarFilePath)) />
<cfset gzipStream = CreateObject("java", "java.util.zip.GZIPOutputStream").Init(outputStream) />
<cfsavecontent variable="siteMapHeader"><?xml version="1.0" encoding="UTF-8"?>
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9"
xmlns:image="http://www.sitemaps.org/schemas/sitemap-image/1.1"
xmlns:video="http://www.sitemaps.org/schemas/sitemap-video/1.1">
</cfsavecontent>
<cfset siteMapFooter = "</urlset>" />
<cfset gzipStream.write(ToString(siteMapHeader).GetBytes()) />
<cfset gzipStream.close() />
<cfset outputStream.close() />
工作正常!我一直在嘗試jTar,但沒有太多的運氣,正準備嘗試這個。當我用7-zip打開TAR文件時出現一個奇怪的錯誤: – RobE
錯誤是「存檔結束後有數據」。我不確定那是什麼。 – RobE
使用哪個例子?在我的(簡短)測試中,對於我來說,在7zip中都沒有錯誤地打開。 – Leigh