Use New Java IO to write string into a file : New IO « File Input Output « Java






Use New Java IO to write string into a file

/*
 * Output:
File stream created successfully.
New buffer:           position = 0  Limit = 1024  capacity = 1024
Buffer after loading: position = 30  Limit = 1024  capacity = 1024
Buffer after flip:    position = 0  Limit = 30  capacity = 1024
Buffer contents written to file.
 */

import java.io.File;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.FileNotFoundException;
import java.nio.ByteBuffer;
import java.nio.channels.FileChannel;

public class MainClass {
  public static void main(String[] args) {
    String phrase = new String("www.java2s.com\n");

    File aFile = new File("test.txt");   
    FileOutputStream outputFile = null;  
    try {
      outputFile = new FileOutputStream(aFile, true);
      System.out.println("File stream created successfully.");
    } catch (FileNotFoundException e) {
      e.printStackTrace(System.err);
    } 

    FileChannel outChannel = outputFile.getChannel();
    
    ByteBuffer buf = ByteBuffer.allocate(1024);
    System.out.println("New buffer:           position = " + buf.position()
                       + "\tLimit = " + buf.limit() + "\tcapacity = "
                       + buf.capacity());

    // Load the data into the buffer
    for (char ch : phrase.toCharArray()) {
      buf.putChar(ch);
    }
    System.out.println("Buffer after loading: position = " + buf.position()
                       + "\tLimit = " + buf.limit() + "\tcapacity = "
                       + buf.capacity());
    buf.flip();
    System.out.println("Buffer after flip:    position = " + buf.position() 
                       + "\tLimit = " + buf.limit() + "\tcapacity = " 
                       + buf.capacity());

    try {
      outChannel.write(buf);
      outputFile.close();
      System.out.println("Buffer contents written to file.");
    } catch (IOException e) {
      e.printStackTrace(System.err);
    }
  }
}


           
       








Related examples in the same category

1.Use a mapped file to read a text file
2.FileChannel: map(FileChannel.MapMode mode,long position,long size)
3.Write to a file using the new I/O
4.Write to a mapped file
5.Copy a file using NIO
6.Write A String As Bytes