2015-12-30 105 views
1

目前,我使用XMLOutputFactory其接受OutputStream作为参数的本地目录写入xml文件。但现在我需要将XML文件写入AWS S3,而无需在本地写入。我没有本地目录访问权限。如何将XML文件写入到AWS

但我没有得到“我怎么能写XML文件AWS S3?”。

这是我在本地目录中写入xml的代码。

File file = new File(storeFilename); 
DataOutputStream stream = null; 
stream = new DataOutputStream(new FileOutputStream(file)); 
// Create new instance of XML straem writer 
XMLOutputFactory inputFactory = XMLOutputFactory.newInstance(); 

try { 
    XMLStreamWriter writer = inputFactory.createXMLStreamWriter(
       graphMLOutputStream, "UTF8"); 

    writer.writeStartDocument(); 
    writer.writeStartElement(GRAPHML); 
    writer.writeAttribute(XMLNS, GRAPHML_XMLNS); 
    } 

我知道如何给文件名或输入流作为参数使用PutObjectRequest()穿上AWS S3文件。

// send request to S3 to create folder 
PutObjectRequest putobjreq = new PutObjectRequest(
       CAWSConstants.BUCKETNAME, file.getName(), file);    
// put graphml file to aws 
s3Client.putObject(putobjreq); 

但我不知道如何使用xmlWriter将xml转换为inputstream。我可以发送给PutObjectRequest

请给我提示或参考。

回答