Writing data into file from URL address

Hi!
I need to download file from certain url address and write it to file on my local disk. The file being downloaded is a image file and therefore
I cannot make sure what encoding should I use. When I save file manually on disk and compare it with the file written programmatically, then
the bytes in both files are not equal. Any smart advises are welcome.
The code being used is:
import java.net.*;
import java.io.*;
public class UrlParser {
     public static void main(String[] args) {
          String data;
          try{
               // Construct a URL object
               URL url = new URL("http://stockcharts.com/c-sc/sc?s=qqqq&p=D&b=3&g=0&i=t74934638175&r=4028");
               // Open a connection to the URL object
               String encoding = "UTF8";
               BufferedReader html = new BufferedReader(new InputStreamReader(url.openStream(),encoding));      
               Writer img_out = new OutputStreamWriter(new FileOutputStream("sc.gif"), encoding);
               while((data = html.readLine()) != null) {
                    img_out.write( data );
               img_out.close();
          } catch(MalformedURLException e) {
               System.out.println(e);
          } catch(IOException e) {
               System.out.println(e);
}

Use InputStream and OutputStream classes, not Readers/Writers. The latter are for "text" I/O, not "binary".

Similar Messages

  • Writing data into files using VHDL Textio

    Hi 
    I was trying to write nos. from 1 to 8 into a text file using the below program.
    process
    type IntegerFileType is file of integer;
    file data_out: IntegerFileType ;
    variable fstatus: FILE_OPEN_STATUS;
    variable coun: natural:= 1;
    begin
    file_open(fstatus,data_out,"myfile.txt",write_mode);
    for i in 1 to 8 loop
    write(data_out, coun);
    coun := coun + 1;
    end loop;
    file_close(data_out);
    wait; -- an artificial way to stop the process
    end process;
    But getting the below attached result..
    Can you please help me out what could be wrong with the program.
    Thanks & regards
    Madhur

    Do you want the numbers in the file to be human readable ASCII?
    Then you'll need to convert your coun to a string. 
    declare another variable of type line (type access to string).
    do a write() to the line, then a writeline() to the file.
    natural'image(coun) will convert coun to a string.
    Google should help you find example code that will help.

  • How to bulk import data into CQ5 from MySQL and file system

    Is there an easy way to bulk import data into CQ5 from MySQL and file system?  Some of the files are ~50MB each (instrument files).  There are a total of ~1,500 records spread over about 5 tables.
    Thanks

    What problem are you having writing it to a file?
    You can't use FORALL to write the data out to a file, you can only loop through the entries in the collection 1 by 1 and write them out to the file like that.
    FORALL can only be used for SQL statements.

  • I am writing datas into a FIFO ,i am reading datas from fifo .but when i am writing datas like a a(0),a(1),a(2 like that.when i am reading dating datas a(0)comes to a(3 ) rd place .what is the reason ?

    I am writing datas into a FIFO in FPGA Target side  ,i am reading datas from fifo in windows host side  .but when i am writing datas like a a(0),a(1),a(2 like that.when i am reading dating datas a(0)comes to a(3 ) rd place, a(1) comes to a a(0) .what is the reason ?

    Please use a shorter title in your subject line and not post the entire question in therre.  (See the subject line I created.)   There is also no such word as "datas".  Data is already plural.
    Please read http://stackoverflow.com/help/how-to-ask.  Your question is hard to read because you aren't using proper punctuation and capitalization of your sentences.  It looks like one run-on sentence.
    Beyond that, it is impossible to help you solve our problem with just your question.  Please provide some more information.  Perhaps even attach code we can look at.  Show us what the data you are sending is supposed to look like, and what it actually looks like.

  • Insert Data into Table from TXT or CSV file !!!!!

    Dear All,
    Recently I have started working on APEX. In Oracle Forms, we used to use TEXT_IO for inserting records into tables from txt files. Now I want to do the same thing in apex 3.2. How can I insert data into tables from txt of csv files.
    Waiting of your valuable suggestions.
    With kind regards,
    Yousuf.

    Yousuf
    wwv_flow_files is used by APEX to hold uploaded files.
    If you incorporate a file browse item on you page, browse for the selected file, then submit the page (having the PL/SQL process described as an on suibmit process) then what I detailed should work.
    If you don't need users to have access to this then just go to Home>Utilities>Data Load/Unload in APEX and there is a handy load utility there that does it all for you.
    Cheers
    Ben

  • \n is not working by the time writing text into file ...

    Hi,
    I am reading each line from file and writing into another file ...
    It is writing continously in the file even if i use \n for new line ...
    Why "\n" is not working by the time writing text into file ...
    Here is my code:
    import java.io.*;
    import java.net.*;
    import java.util.*;
    public class Test11{
    private BufferedReader data;
    private String line=null;
    private StringBuffer buf= new StringBuffer();
    private BufferedWriter thewriter=null;
    private File file=null;
    private FileReader fr=null;
    private String inputLocation="c:\\test14.txt";
    public Test11(){ }
    public void disp(){
    try {   
    file=new File(inputLocation);
    fr = new FileReader(file);
    data = new BufferedReader(fr);
    while ((line = data.readLine()) != null) {
    buf.append(line + "\n");
    String text=buf.toString();
    thewriter = new BufferedWriter(new FileWriter("c:\\test15.txt"));
    thewriter.write(text);
    buf=null;
    thewriter.close();
    } catch(IOException e) { System.out.println("error ==="+e ); }
    public static void main(String[] args) {
    Test11 t=new Test11();
    t.disp();
    System.out.println("all files are converted...");
    I used "\n" after reading each line .. i want output file also same as input file ... how do i break each line by the time writing into text file .. "\n" is working in word pad but now working in notepad ... in note pad i am getting some thing like rectangle insted of "\n" ....
    Any help please .....
    thanks.

    \n works just fine, and every text editor in the world except Notepad understands that it is supposed to be a line-ending character. You don't have a problem, except in your choice of text editor. If somebody is forcing you to use Notepad then you'll have to output "\r\n" instead.

  • How to store xml data into file in xml format through java program?

    HI Friends,
    Please let me know
    How to store xml data into file in xml format through java program?
    thanks......
    can discuss further at messenger.....
    Avanish Kumar Singh
    Software Engineer,
    Samsung India Development Center,
    Bangalore--560001.
    [email protected]

    Hi i need to write the data from an XML file to a Microsoft SQL SErver database!
    i got a piece of code from the net which allows me to parse th file:
    import java.io.IOException;
    import org.xml.sax.*;
    import org.xml.sax.helpers.*;
    import org.apache.xerces.parsers.SAXParser;
    import java.lang.*;
    public class MySaxParser extends DefaultHandler
    private static int INDENT = 4;
    private static String attList = "";
    public static void main(String[] argv)
    if (argv.length != 1)
    System.out.println("Usage: java MySaxParser [URI]");
    System.exit(0);
    String uri = argv[0];
    try
    XMLReader parser = XMLReaderFactory.createXMLReader("org.apache.xerces.parsers.SAXParser");
    MySaxParser MySaxParserInstance = new MySaxParser();
    parser.setContentHandler(MySaxParserInstance);
    parser.parse(uri);
    catch(IOException ioe)
    ioe.printStackTrace();
    catch(SAXException saxe)
    saxe.printStackTrace();
    private int idx = 0;
    public void characters(char[] ch, int start, int length)
    throws SAXException
    String s = new String(ch, start, length);
    if (ch[0] == '\n')
    return;
    System.out.println(getIndent() + " Value: " + s);
    public void endDocument() throws SAXException
    idx -= INDENT;
    public void endElement(String uri, String localName, String qName) throws SAXException
    if (!attList.equals(""))
    System.out.println(getIndent() + " Attributes: " + attList);
    attList = "";
    System.out.println(getIndent() + "end document");
    idx -= INDENT;
    public void startDocument() throws SAXException
    idx += INDENT;
    public void startElement(String uri,
    String localName,
    String qName,
    Attributes attributes) throws SAXException
    idx += INDENT;
    System.out.println('\n' + getIndent() + "start element: " + localName);
    if (localName.compareTo("Machine") == 0)
    System.out.println("YES");
    if (attributes.getLength() > 0)
    idx += INDENT;
    for (int i = 0; i < attributes.getLength(); i++)
    attList = attList + attributes.getLocalName(i) + " = " + attributes.getValue(i);
    if (i < (attributes.getLength() - 1))
    attList = attList + ", ";
    idx-= INDENT;
    private String getIndent()
    StringBuffer sb = new StringBuffer();
    for (int i = 0; i < idx; i++)
    sb.append(" ");
    return sb.toString();
    }// END PRGM
    Now , am not a very good Java DEv. and i need to find a soln. to this prob within 1 week.
    The next step is to write the data to the DB.
    Am sending an example of my file:
    <Start>
    <Machine>
    <Hostname> IPCServer </Hostname>
    <HostID> 80c04499 </HostID>
    <MachineType> sun4u [ID 466748 kern.info] Sun Ultra 5/10 UPA/PCI (UltraSPARC-IIi 360MHz) </MachineType>
    <CPU> UltraSPARC-IIi at 360 MHz </CPU>
    <Memory> RAM : 512 MB </Memory>
    <HostAdapter>
    <HA> kern.info] </HA>
    </HostAdapter>
    <Harddisks>
    <HD>
    <HD1> c0t0d0 ctrl kern.info] target 0 lun 0 </HD1>
    <HD2> ST38420A 8.2 GB </HD2>
    </HD>
    </Harddisks>
    <GraphicCard> m64B : PCI PGX 8-bit +Accel. </GraphicCard>
    <NetworkType> hme0 : Fast-Ethernet </NetworkType>
    <EthernetAddress> 09:00:30:C1:34:90 </EthernetAddress>
    <IPAddress> 149.51.23.140 </IPAddress>
    </Machine>
    </Start>
    Note that i can have more than 1 machines (meaning that i have to loop thru the file to be able to write to the DB)
    Cal u tellme what to do!
    Even better- do u have a piece of code that will help me understand and implement the database writing portion?
    I badly need help here.
    THANX

  • Failed to read wsdl file from url

    Hi all,
    I am struggling with WL 9.2, consuming a WSRP enabled portlet at the following point:
    Having created a proxy portlet, refering to the WSDL of the WSRP producer, I did successfully deploy the portal. When accessing the portal and consuming the portlet the following exception is thrown:
    com.bea.wsrp.faults.TransportException: Failed to read wsdl file from url due to -- java.net.ConnectException: Tried all: '8' addresses, but could not connect over HTTP to server: 'www.w3.org', port: '80';
    The WSDL includes a schema (http://www.w3.org/2001/XMLSchema). The URL is definetely accessible by the server.
    I am open for any kind of support ;) Thanks in advance!
    Kind regards,
    Matthias

    Yes, they are all local schemas. The way ALSB works, even if the import path in the wsdl or parent schema doesn't exist, relative to the current directory, you can specify which schema resolves that reference. My WSDL imports several schemas, all of which import others. When I was done importing all the schemas and resolving references, all the references in WSDLs and XSDs were assigned and valid. However, after all of those imports and reference resolution, it still says the WSDL is invalid, with the following odd error message:
    The WSDL is not semantically valid: Failed to read wsdl file from url due to -- java.net.MalformedURLException: no protocol: /XMLSchema/PaymentServices/Resources/PaymentServices-200802.
    That path listed refers to one of the schemas imported by the WSDL. The reference to that schema in the WSDL was resolved, and it doesn't complain about that reference.

  • Weblogic call a excel-file from URL doesn't open MSExcel but flat html

    Weblogic call a excel-file from URL doesn't open MSExcel but flat html
    Hi,
    WLS 10.3.5
    Forms 11.1.1.4
    I do migrate from AS10g to WLS 10.3.5 / Forms 11
    I get differences between FORMS 10 g / AS and FORMS 11 / WLS
    when call an excel-file with web.showdocument
    in 10g AS10g
    the call
    web.showdocumen('http://MyAS10_Server/myFormsMapping/myExcelfile.xls, _blank);
    opens a Windows-Box
    to decide
    open with ( MSExcel )
    or
    download and save as File
    in WLS 10.3.5 / FORMS 11.1.1.4
    the call with webcache Port 8090 as well as Port OHS 8888
    web.showdocumen('http://MyWLS_Server:8090/myFormsMapping/myExcelfile.xls, _blank);
    opens promptly the excel-File into the Browser as html-Format
    How to get the same way under WLS as before in AS 10g,
    config OHS ?
    regards
    get answer here :
    Weblogic: when call a excelfile from URL doesn't open MSExcel but flat html
    Edited by: astramare on Sep 12, 2011 11:59 AM

    Weblogic: when call a excelfile from URL doesn't open MSExcel but flat html

  • How to display a dynamic image file from url?

    Hey,I want to display a dynamic image file from url in applet.For example,a jpg file which from one video camera server,store one frame pictur for ever.My java file looks like here:
    //PlayJpg.java:
    import java.awt.*;
    import java.applet.*;
    import java.net.*;
    public class PlayJpg extends Applet implements Runnable {
    public static void main(String args[]) {
    Frame F=new Frame("My Applet/Application Window");
    F.setSize(480, 240);
    PlayJpg A = new PlayJpg();
    F.add(A);
    A.start(); // Web browser calls start() automatically
    // A.init(); - we skip calling it this time
    // because it contains only Applet specific tasks.
    F.setVisible(true);
    Thread count = null;
    String urlStr = null;
    int sleepTime = 0;
    Image image = null;
    // called only for an applet - unless called explicitely by an appliaction
    public void init() {
                   sleepTime = Integer.parseInt(getParameter("refreshTime"));
              urlStr = getParameter("jpgFile");
    // called only for an applet - unless called explicitely by an appliaction
    public void start() {
    count=(new Thread(this));
    count.start();
    // called only for applet when the browser leaves the web page
    public void stop() {
    count=null;
    public void paint(Graphics g) {
    try{
    URL location=new URL(urlStr);
    image = getToolkit().getImage(location);
    }catch (MalformedURLException mue) {
                   showStatus (mue.toString());
              }catch(Exception e){
              System.out.println("Sorry. System Caught Exception in paint().");
              System.out.println("e.getMessage():" + e.getMessage());
              System.out.println("e.toString():" + e.toString());
              System.out.println("e.printStackTrace():" );
              e.printStackTrace();
    if (image!=null) g.drawImage(image,1,1,320,240,this);
    // called each time the display needs to be repainted
    public void run() {
    while (count==Thread.currentThread()) {
    try {
    Thread.currentThread().sleep(sleepTime*1000);
    } catch(Exception e) {}
    repaint(); // forces update of the screen
    // end of PlayJpg.java
    My Html file looks like here:
    <html>
    <applet code="PlayJpg.class" width=320 height=240>
    <param name=jpgFile value="http://Localhost/playjpg/snapshot0.jpg">
    <param name=refreshTime value="1">
    </applet>
    </html>
    I only get the first frame picture for ever by my html.But the jpg file is dynamic.
    Why?
    Can you help me?
    Thanks.
    Joe

    Hi,
    Add this line inside your run() method, right before your call to repaint():
    if (image != null) {image.flush();}Hope this helps,
    Kurt.

  • How to play .wav file from URL in web browser embed

    Hi;
    I want to play a .wav sound file in embed default media player in IE. Sound file is on some HTTP location. I am unable to sound it in that player.
    Following is the code.
    URL url = new URL("http://www.concidel.com/upload/myfile.wav");
            URLConnection urlc = url.openConnection();
            InputStream is = (InputStream)urlc.getInputStream();
             fileBytes = new byte[is.available()];
             while (is.read(fileBytes,0,fileBytes.length)!=-1){}
    BufferedOutputStream out = new BufferedOutputStream(response.getOutputStream());
             out.write(fileBytes);Here is embed code of HTML.
    <embed src="CallStatesTreeAction.do?ivrCallId=${requestScope.vo.callId}&agentId=${requestScope.vo.agentId}" type="application/x-mplayer2" autostart="0" playcount="1" style="width: 40%; height: 45" />1. If I write in FileOutputStream then it plays well
    2. If I replace my code of getting file from URL to my local hard disk. then it also works fine.
    I don't know why I am unable to play file from HTTP. And why it plays well from local hard disk.
    Please help.

    You'll have to ask the devleopers of sencha and phonegap.

  • Download file from URL using ADF (urgent help required)

    We have the following requirement:
    On clicking a button we need to download the file present at a particular location(we have the URL).
    I have written the following in .jspx file :
    <af:commandButton  id="btn1" >
                        <af:fileDownloadActionListener contentType="text/plain; charset=utf-8" method="#{bean.getFile}"/>
    </af:commandButton>
    The corresponding method in bean is :
    public void getFile(FacesContext facesContext, OutputStream outputStream) {
    HttpServletResponse response = null;
    ServletOutputStream ouputStream = null;
    currUrl = getFileURL("ID", 281);
    response =
    (HttpServletResponse)FacesContext.getCurrentInstance().getExternalContext().getResponse();
    try {
    ouputStream = response.getOutputStream();
    ouputStream.write(this.getFileBytes(), 0,this.getFileBytes().length);
    ouputStream.flush();
    ouputStream.close();
    } catch (IOException ioe) {
    System.out.println("IO Exception");
    public byte[] getFileBytes() {
    URLConnection urlConn = null;
    InputStream iStream = null;
    URL url;
    byte[] buf;
    int byteRead;
    try {
    url= new URL("http://hjhj:34104/test.pdf");
    urlConn = url.openConnection();
    iStream = urlConn.getInputStream();
    buf = new byte[5000000];
    byteRead = iStream.read(buf);
    if (byteRead > 0) {
    System.out.println("Downloaded Successfully.");
    return buf;
    } catch (FileNotFoundException fnfe) {
    System.out.println("File not found Exception");
    fnfe.printStackTrace();
    } catch (Exception e) {
    System.out.println("Exception:" + e.getMessage());
    e.printStackTrace();
    } finally {
    try {
    iStream.close();
    } catch (IOException e) {
    System.out.println("IO Exception");
    e.printStackTrace();
    System.out.println("File");
    return null;
    The file is opening in same window but in some encrypted format. My requirement is to :
    1. Have a pop (as in Mozilla or IE) which asks if I want to save the file or open.
    2. Depending on that the file should be opened in pdf format and not in browser same window neither in browser tab.

    Jdev version : 11.1.2.1.0
    in .jspx file : we have a button. On clicking the button file from URL should be downloaded. I have used fileDownloadActionListener in commandButton. Corresponding code :
    <af:commandButton  id="btn1" >
                        <af:fileDownloadActionListener contentType="text/plain; charset=utf-8" method="#{bean.getFile}"/>
    </af:commandButton>
    in bean class : the method corresponding to fileDownloadActionListener is :
    public void getFile(FacesContext facesContext, OutputStream outputStream) {
         HttpServletResponse response = null;
         ServletOutputStream ouputStream = null;
         response =(HttpServletResponse)FacesContext.getCurrentInstance().getExternalContext().getResponse();
         try {
              ouputStream = response.getOutputStream();
              ouputStream.write(this.getFileBytes(), 0,this.getFileBytes().length);
              ouputStream.flush();
              ouputStream.close();
              } catch (IOException ioe) {
                   System.out.println("IO Exception");
    public byte[] getFileBytes() {
         URLConnection urlConn = null;
         InputStream iStream = null;
         URL url;
         byte[] buf;
         int byteRead;
         try {
              url= new URL("http://hjhj:34104/test");
              urlConn = url.openConnection();
              iStream = urlConn.getInputStream();
              buf = new byte[5000000];
              byteRead = iStream.read(buf);
              if (byteRead > 0) {
                   System.out.println("Downloaded Successfully.");
              return buf;   
        } catch (FileNotFoundException fnfe) {
              System.out.println("File not found Exception");
         } catch (Exception e) {
              System.out.println("IO Exception");
    The URL given in the code is for a file which can be a PDF file or an EXCEL file.
    My requirement is when i click the button:
    1. A pop should come (as in Mozilla or IE) which asks if I want to save the file or open.
    2. if i click on save file should save in a particular location.
    3. if i click on open it should open as PDF/EXCEL format and NOT in browser.
    Message was edited by: 1001638

  • I have a mid year 2007 24 inch iMac and will be purchasing a new 27 inch Retina iMac, what is the easiest way to transfer the data and files from my old machine to the new one?

    I have a mid year 2007 24 inch iMac and will be purchasing a new 27 inch Retina iMac, what is the easiest way to transfer the data and files from my old machine to the new one?

    Following up on this thread,
    I have a new iMac on the way and my current is from 2008, never had a problem but I am sure there are internal issues that I would prefer not to transfer.
    I have no issues other then the slowness in certain programs and that is the main reason to buy a new one.
    Programs like numbers and pages seem to take a longer time to open after I update to Yosemite.
    I only use 272GB of 500 GB, my memory is 4GB and I am upgrading to 8Gb and bought the 4.0 processor.
    Question:
    Is there a way to manually transfer items or would that be a waste of time in that if there are issues they could be anywhere and would transfer anyway?

  • Proxy creation/ access key in the how to guide "push data into BW from XI"

    Hi !
    I'm experiencing troubles with a step of the how to guide "push Data into BW from XI".
    When i want to create the proxy in the BW system (step 10), i'm asked for an access key for the object R3TR CLAS CL_<name of the prefix>_<name of message interface>
    I think that access keys are needed when an object has to be modified. Do I really have to modify this SAP object ? I don't really feel like destroying the whole system...
    Thanks in advance !

    Hi Benjamin,
    you are not destroying anything in the system. Since you generating a class for the implementation of the proxy within the SAP name space, you are asked for the access key (you can register developers and objects via the OSS).
    The system behavior depends on the setting of the system, whether changes are are recorded, etc..
    Ask your basis administrator, who should be able to assist you.
       Cheers
          Andreas

  • Java Embedding for writing string into file

    Hi ,
    According to my requirement I need to create a file and write string data into file.
    This string data I am getting as a output of the partner link. Their is 5 string variable which I need to write in file .
    I want to use java Embedding activity .
    So plz provide me any solution or any link.

    Hi,
    Why would you want to do this with java embeding? Why not just use the assign activity to create/concatenate the string and then write it to a file with the file adapter?
    Andre

Maybe you are looking for

  • ABAP Queries

    We have just upgraded from 4.6 to 6.0. I have noticed lot of differences in the code behind the ABAP queries that is generated once the queries are created. In some instances they are form bunch of include programs like the ones below but in some oth

  • I have iphone 4s and i live in Netherand but i bought my iphne from iraq and haven't facetime, I have iphone 4s and i live in Netherand but i bought my iphne from iraq and haven't facetime

    I have iphone 4s and i live in Netherand but i bought my iphne from iraq and haven't facetime, I have iphone 4s and i live in Netherand but i bought my iphne from iraq and haven't facetime

  • Troubleshooting iMac Startup Problem

    I've been trying to troubleshoot a problem with my mid-2007 iMac 24" where it sometimes will not startup.  I can hear it turn on when I press the power button but it doesn't chime.  I can also hear the fan.  I don't boot from the internal drive as my

  • Queries Performance impact

    Hi Team,           We have few queries which were running good until last week; but for the past 3 days these queries were facing severe some performance issues and timeout dumps in the back-end. For some selections it is running long and for some se

  • Before aggregation - incorrect values

    Hello, I am using Calculated Key Figure with time of aggregation calculation = "before aggregation" and then I use this CKF in columns. Some rows are calculated correctly, but some of them are not. And when I check the key figure definition for those