blob: 81b575ae5eaad99a71fd486ba77662199e2979bf [file] [log] [blame]
/*
*******************************************************************************
* Copyright (C) 2001-2004, International Business Machines Corporation and *
* others. All Rights Reserved. *
*******************************************************************************
*/
package com.ibm.icu.dev.test.format;
import com.ibm.icu.text.*;
import java.util.Locale;
import java.io.*;
/**
* @version 1.0
* @author Ram Viswanadha
*/
public class WriteNumberFormatSerialTestData {
static final String header="/*\n" +
" *******************************************************************************\n"+
" * Copyright (C) 2001, International Business Machines Corporation and *\n"+
" * others. All Rights Reserved. *\n"+
" *******************************************************************************\n"+
" */\n\n"+
"package com.ibm.icu.dev.test.format;\n\n"+
"public class NumberFormatSerialTestData {\n"+
" //get Content\n"+
" public static byte[][] getContent() {\n"+
" return content;\n"+
" }\n";
static final String footer ="\n final static byte[][] content = {generalInstance, currencyInstance, percentInstance, scientificInstance};\n"+
"}\n";
public static void main(String[] args){
NumberFormat nf = NumberFormat.getInstance(Locale.US);
NumberFormat nfc = NumberFormat.getCurrencyInstance(Locale.US);
NumberFormat nfp = NumberFormat.getPercentInstance(Locale.US);
NumberFormat nfsp = NumberFormat.getScientificInstance(Locale.US);
try{
FileOutputStream file = new FileOutputStream("NumberFormatSerialTestData.java");
file.write(header.getBytes());
write(file,(Object)nf,"generalInstance", "//NumberFormat.getInstance(Locale.US)");
write(file,(Object)nfc,"currencyInstance","//NumberFormat.getCurrencyInstance(Locale.US)");
write(file,(Object)nfp,"percentInstance","//NumberFormat.getPercentInstance(Locale.US)");
write(file,(Object)nfsp,"scientificInstance","//NumberFormat.getScientificInstance(Locale.US)");
file.write(footer.getBytes());
file.close();
}catch( Exception e){
System.out.println(e.getMessage());
e.printStackTrace();
}
}
private static void write(FileOutputStream file,Object o ,String name,String comment){
try{
ByteArrayOutputStream bts = new ByteArrayOutputStream();
ObjectOutputStream os = new ObjectOutputStream(bts);
os.writeObject((Object)o);
os.flush();
os.close();
byte[] myArr = bts.toByteArray();
//String temp = new String(myArr);
System.out.println(" "+comment+ " :");
/*System.out.println("minimumIntegerDigits : " + (temp.indexOf("minimumIntegerDigits")+"minimumIntegerDigits".length()));
System.out.println("maximumIntegerDigits : " + (temp.indexOf("maximumIntegerDigits")+"maximumIntegerDigits".length()));
System.out.println("minimumFractionDigits : " + (temp.indexOf("minimumFractionDigits")+"minimumFractionDigits".length()));
System.out.println("maximumFractionDigits : " + (temp.indexOf("maximumFractionDigits")+"maximumFractionDigits".length()));
*/
//file.write(myArr);
file.write(("\n "+comment).getBytes());
file.write(new String("\n static byte[] "+name+" = new byte[]{ \n").getBytes("UTF-8"));
file.write( " ".getBytes());
for(int i=0; i<myArr.length; i++){
file.write(String.valueOf((int)myArr[i]).getBytes());
file.write( ", ".getBytes());
if((i+1)%20 == 0){
file.write("\n".getBytes());
file.write( " ".getBytes());
}
}
file.write(new String("\n };\n").getBytes("UTF-8"));
}catch( Exception e){
System.out.println(e.getMessage());
e.printStackTrace();
}
}
}