それぞれの言語の特徴を調べるために、同じテーマでプログラムを書いてみました。
コンソールアプリケーションの基本的である標準入出力のやり取りをそれぞれの言語で記述してみました。 標準入力からテキストを読み込み、標準出力に出力します。
"<>" と指定すると標準入力から入力することになるので、それをPrintで出力すればOK
getsでとるとバッファの長さとかの問題があるので1文字ずつ処理してみました
Cとの違いはiostreamを使ったことだけです。
標準入出力はSystemクラスの System.in/System.outを使用する。 Javaのjava.langパッケージは他のパッケージと違い使用するときにimport宣言をしなくてもよい特異点となっている。注意したいのは入力がInputStremで出力がPrintStreamだということである。 PrintStremは行単位の出力をするメソッドがあるが、InputSteramには行単位の入力をするためのメソッドがない。そのために他のストリームに接続する必要がある。
標準入力は$stdinという変数として定義されているので、for x in を使って全部表示すればOK
標準入出力は"php://stdin" のように特別なURLを使用して明示的にOPENしなければいけないようだ。
WScriptクラスの中にあるStdIn,StdOutオブジェクトを使用しました。
カレントディレクトリに含まれるファイルを表示します。 余裕があればファイルサイズ、日付なども表示します。
ファイル名とファイルサイズを表示してみました。lo_dirが実際の処理している関数です。ディレクトリとファイルの判定をして、ファイルならばサイズを出力しています。
stat(ファイル名)で配列にステータスが入ります。それぞれが何を意味しているかはマニュアルを参照してください。 strftimeは形式に合わせて日時を文字列に変換する関数です。
opendir, readerでディレクトリのオープンとファイル読み込みになります。