//package com.oracle.java.corelibs;

import java.io.ByteArrayOutputStream; 
import java.io.IOException; 
import java.io.OutputStream; 
import java.util.Base64; 

public class Base64Bug { 

  public static void main(String[] args) throws IOException { 
    String input = "Man"; 
    int lineLength = 1; // values 1-3 will cause this error. Line 138 of Base64 should probably be 'if (lineLength / 4 <= 0) {' 
    Base64.Encoder encoder = Base64.getMimeEncoder(lineLength, new byte[]{'@'}); 

    ByteArrayOutputStream result = new ByteArrayOutputStream(); 
    OutputStream out = encoder.wrap(result); 

    out.write(input.getBytes()); 
    out.close(); 
    System.out.println(new String(result.toByteArray())); // @TWFu <- line separator at beginning of output 
    System.out.println(new String(encoder.encode(input.getBytes()))); // TWFu 
  } 
} 