Files
gcc-reflection/libjava/gnu/gcj/convert/Convert.java
Jakub Jelinek b67cd4e331 gcc.c (process_command): Update copyright notice dates.
gcc/
	* gcc.c (process_command): Update copyright notice dates.
	* gcov-dump.c: Ditto.
	* gcov.c: Ditto.
	* doc/cpp.texi: Bump @copying's copyright year.
	* doc/cppinternals.texi: Ditto.
	* doc/gcc.texi: Ditto.
	* doc/gccint.texi: Ditto.
	* doc/gcov.texi: Ditto.
	* doc/install.texi: Ditto.
	* doc/invoke.texi: Ditto.
gcc/fortran/
	* gfortranspec.c (lang_specific_driver): Update copyright notice
	dates.
	* gfc-internals.texi: Bump @copying's copyright year.
	* gfortran.texi: Ditto.
	* intrinsic.texi: Ditto.
	* invoke.texi: Ditto.
gcc/go/
	* gccgo.texi: Bump @copyrights-go year.
gcc/java/
	* jcf-dump.c (version): Update copyright notice dates.
libgomp/
	* libgomp.texi: Bump @copying's copyright year.
libquadmath/
	* libquadmath.texi: Bump @copying's copyright year.
libitm/
	* libitm.texi: Bump @copying's copyright year.
gcc/ada/
	* gnat_ugn.texi: Bump @copying's copyright year.
libjava/
	* classpath/gnu/java/rmi/registry/RegistryImpl.java (version): Update
	copyright notice dates.
	* classpath/tools/gnu/classpath/tools/orbd/Main.java (run): Ditto.
	* gnu/gcj/convert/Convert.java (version): Update copyright notice
	dates.
	* gnu/gcj/tools/gcj_dbtool/Main.java (main): Ditto.

From-SVN: r219187
2015-01-05 13:05:46 +01:00

189 lines
4.7 KiB
Java

/* Copyright (C) 1999-2015 Free Software Foundation
This file is part of libgcj.
This software is copyrighted work licensed under the terms of the
Libgcj License. Please consult the file "LIBGCJ_LICENSE" for
details. */
package gnu.gcj.convert;
import java.io.*;
public class Convert
{
static void error (String message)
{
System.err.print("jv-convert: ");
System.err.println(message);
System.err.println("Try `jv-convert --help' for more information.");
System.exit(1);
}
static void help ()
{
System.out.println("Usage: jv-convert [OPTIONS] [INPUTFILE [OUTPUTFILE]]");
System.out.println();
System.out.println("Convert from one encoding to another.");
System.out.println();
System.out.println(" --encoding FROM");
System.out.println(" --from FROM use FROM as source encoding name");
System.out.println(" --to TO use TO as target encoding name");
System.out.println(" -i FILE read from FILE");
System.out.println(" -o FILE print output to FILE");
System.out.println(" --reverse swap FROM and TO encodings");
System.out.println(" --help print this help, then exit");
System.out.println(" --version print version number, then exit");
System.out.println();
System.out.println("`-' as a file name argument can be used to refer to stdin or stdout.");
System.exit(0);
}
static void version ()
{
System.out.println("jv-convert ("
+ System.getProperty("java.vm.name")
+ ") "
+ System.getProperty("java.vm.version"));
System.out.println();
System.out.println("Copyright (C) 2015 Free Software Foundation, Inc.");
System.out.println("This is free software; see the source for copying conditions. There is NO");
System.out.println("warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.");
System.exit(0);
}
static void missing (String arg)
{
error("missing arg after `" + arg + "' option");
}
public static void main (String[] args)
{
String inName = "-";
String outName = "-";
String inEncodingName = null;
String outEncodingName = "JavaSrc";
int seenNames = 0;
boolean reverse = false;
for (int i = 0; i < args.length; i++)
{
String arg = args[i];
if (arg.length() == 0)
error("zero-length argument");
if (arg.charAt(0) == '-')
{
if (arg.equals("-encoding") || arg.equals("--encoding")
|| args.equals("-from") || arg.equals("--from"))
{
if (++i == args.length) missing(arg);
inEncodingName = args[i];
}
else if (arg.equals("-to") || arg.equals("--to"))
{
if (++i == args.length) missing(arg);
outEncodingName = args[i];
}
else if (arg.equals("-i"))
{
if (++i == args.length) missing(arg);
inName = args[i];
}
else if (arg.equals("-o"))
{
if (++i == args.length) missing(arg);
outName = args[i];
}
else if (arg.equals("-reverse") || arg.equals("--reverse"))
{
reverse = true;
}
else if (arg.equals("-help") || arg.equals("--help"))
{
help ();
}
else if (arg.equals("-version") || arg.equals("--version"))
{
version ();
}
else if (arg.equals("-"))
{
switch (seenNames)
{
case 0:
inName = "-";
seenNames++;
break;
case 1:
outName = "-";
seenNames++;
break;
default:
error("too many `-' arguments");
}
}
else
error("unrecognized argument `" + arg + "'");
}
else
{
switch (seenNames)
{
case 0:
inName = arg;
seenNames++;
break;
case 1:
outName = arg;
seenNames++;
break;
default:
error("too many filename arguments");
}
}
}
if (reverse)
{
String tmp = inEncodingName;
inEncodingName = outEncodingName;
outEncodingName = tmp;
}
try
{
InputStream inStream = inName.equals("-") ? System.in
: new FileInputStream(inName);
OutputStream outStream;
if (outName.equals("-"))
outStream = System.out;
else
outStream = new FileOutputStream(outName);
InputStreamReader in
= (inEncodingName == null
? new InputStreamReader(inStream)
: new InputStreamReader(inStream, inEncodingName));
OutputStreamWriter out
= (outEncodingName == null
? new OutputStreamWriter(outStream)
: new OutputStreamWriter(outStream, outEncodingName));
char[] buffer = new char[2048];
for (;;)
{
int count = in.read(buffer);
if (count < 0)
break;
out.write(buffer, 0, count);
}
in.close();
out.close();
}
catch (java.io.IOException ex)
{
System.err.print("jv-convert exception: ");
System.err.println(ex);
System.exit(-1);
}
}
}