• 締切済み

ソースがかけなくて困ってます。

入力ファイルを読み込んで、画面にファイル内容を表示した後に ファイル行数と、ファイル中の文字数(スペース、タブスペース、改行をのぞいて) ファイル中の単語数を"Line:___ ; CHAR: ___ ; WORD: ___" (_に数字が入ります。) と表示するということで・・・・ 毎度のことながらソースがうまくかけません・・・・ どういう風にソースを書いて良いのか・・・・見当が付きません・・・ もし宜しければご教授ください・・・・

みんなの回答

  • ssr-y6
  • ベストアンサー率71% (5/7)
回答No.2

 考え方としては、 [1]:一行ずつ読み出してそれを行数とする [2]:単語の区切り文字の次の文字数を数えて単語数とする [3]:単語の区切り文字以外の文字数を数えて文字数とする となるので、以下のようになります。 import java.io.*; class wordchar { public static void main(String[] args) { int Int1, LineCount, CharCount, WordCount; boolean SpaceFlag; char Char1; String Str1; LineCount = CharCount = WordCount = 0; try { BufferedReader InFile = new BufferedReader(new FileReader("wordchar.java")); while ((Str1 = InFile.readLine()) != null) { LineCount ++;/*[1]*/ for (Int1 = 0, SpaceFlag = true; Int1 < Str1.length(); Int1 ++) { Char1 = Str1.charAt(Int1); if ((Char1 == ' ') || (Char1 == '\t')) SpaceFlag = true; else { if (SpaceFlag) WordCount ++;/*[2]*/ CharCount ++;/*[3]*/ SpaceFlag = false; }; }; }; InFile.close(); } catch (Exception ex) { System.exit(-1); }; System.out.println("Line:" + Integer.toString(LineCount) + " Char:" + Integer.toString(CharCount) + " Word:" + Integer.toString(WordCount)); }; }

全文を見る
すると、全ての回答が全文表示されます。
  • osamuy
  • ベストアンサー率42% (1231/2878)
回答No.1

UNIX系のコマンドwcと同じようなものですので、その手のCのソースとか参考になるかと。 http://vapour.s22.xrea.com/clangdojo/index.php?wc.c Javaだと、StringTokenizerとか使えるから、少し楽にかけます。 この手のやつは、Javaとか処理系に依存しない基礎的な話なので、アルゴリズム等を主題にした本とかを手元に持っておくとよいです。

参考URL:
http://oshiete.goo.ne.jp/search/search.php?status=select&MT=%A5%A2%A5%EB%A5%B4%A5%EA%A5%BA%A5%E0+%BB%B2%B9%CD%BD%F1
全文を見る
すると、全ての回答が全文表示されます。

関連するQ&A

  • IE8でのファイルのソース表示

    HPを持っています。 最近IE8にしたところ、 ページのソース表示が、おかしくなりました。 というよりファイルのソースを開いて、編集しようとするのですが、ソースが書き換えられなくなっています。もともとメモ帳立ち上げで、HPのページを作っています。IE8にしてからソースを開くと左側縦1列に、数字が並んでおり、おそらく行数だと思います。で、その横にソースが表示されていて、書き込みができなくなっています。 今までは、ファイル開き、ページからソースを開いて、 書き直しや更新をしていたのですが、 それができなくなってしまいました。 何か操作しないとけないんでしょうか。

  • プログラムソースって一行で書いても良い?

    プログラミング言語って一行の終わりを示すマークとかあったりしますよね。 表示する文章も改行を示すマークを入れないと改行されないし。 HTMLとかも改行は<br>とかつけたり、ブロック要素で囲むとかしないと改行されません。 逆に言うと一行で書いてもこれらのマークを付けておけば、命令として認識するし、改行したいところで改行させるということができるってことですよね。 だとしてら、もしかしてプログラムのソースって、後で読み返すことを考えなければ一行で書いてしまっても、ちゃんと動くと言うことなんでしょうか? そういえば、例文などを紹介しているサイトを見ると <input type="text" name="<?php echo "hoge"; ?>"> とか書かれてたりしますもんね。 最近、PHPの教科書を読んでるんですが、やたらとソースを改行したり、スペースを空けたりしていますが、試しに詰めてみるとちゃんと動きました。 もちろん、半角スペースを空けないと命令として認識されないものもありますが、そういうのを除けば、スペースを全て詰めて、改行も無しで一行でかいたとしても、プログラムというのはちゃんと動くんでしょうか? 改行させたり、スペースを空けたり、インデントしたりというのは、あくまでプログラマーが見やすくするためだけのものであって、プログラミング言語の仕様としてはどちらでも良い?

  • ソースネクスト「てがるオフィス」について教えてください

    元々ワードが入っていないPCを購入しました。 ワードが必要になってしまいましたが、 ミニノートなのでCDドライバもなく、 外付けからソフトから揃えると大変なので、 ソースネクストの「てがるオフィス」(USBメモリ版)を 購入しました。 見た目はほぼワードと同じなので良かったと思っていたら 「行数と文字数」の設定のタブはあるものの 「行数のみ」しか設定できず、文字数は標準のものを使うことしか 出来ないことに気がつきました。 どうしても設定したいのですが、このソフトでは無理なのでしょうか。 電話で聞きたくても日祝は休みのようなので困っています。 アドバイスよろしくお願いします。

  • ワードの文字カウント機能をエクセルで行う場合は?

    ワードで、「ツール」→「文字カウント」を選択すると、 文字カウントウィンドウが現れ、 ページ数 単語数 文字数(スペース含めない) 文字数(スペースを含める) 段落数 行数 半角英数の単語数 全角文字+半角カタカナの数 のカウント項目とその数値が表示されますが、これをエクセルで行う場合はどのようにしたらいいのでしょうか? 文字数のカウント"LEN(XX:XX)"までは理解できたのですが、ペース数とそれ以外がどうしてもわかりません。(現在、文字数は出るので問題ないのですが、セル内の英単語数をカウントする必要があり困っています。またファイルはすべて英文のエクセルファイルです。) よろしくお願いします。

  • 変数格納

    C言語で、SJISのテキストファイルを読み出してunsigned charなどの変数に格納するにはソースをどのようにすれば出来ますか?テキストファイルの中には、改行、スペース、Tabなどがあります。

  • ファイルの表示方法について

    毎度、お世話になります。 下記のサイトのファイルを見ていますが、その表示が改行とかスペースが無いので 大変読みづらいものです。 Q1)改行、スペースを追加して、表示する方法はありますか? ==================== http://www.netlib.org/fdlibm/e_log.c ==================== 以上

  • テキストファイルを二次元配列に

    お世話になります。 テキストファイルを1行ずつ読み込んで二次元配列に格納するプログラムですが、 //最大行数 #define LINE_MAX 10 //行内最大文字数 #define INPUT_MAX 128 char str[LINE_MAX][INPUT_MAX]; というようにして実現しています。 これを行数が分からないテキストファイルでも大丈夫なようメモリを動的に確保したいと考えています。 二つの次元の内、一つを動的に確保するにはどのようにしたら良いでしょうか。

  • オープンソースのhファイルをメモ帳で開くと改行されていない

    あるオープンソースのヘッダファイルを入手しました。 ただこのファイルはVisual C++ の編集画面では綺麗に改行されて表示されるのですが、メモ帳で開くと改行されないで表示されます。(但し、改行を表す↑が現れます。) メモ帳でも改行されるようにしたいのですが、良い方法はあるのでしょうか。 このままの状態でデバッグすると、”予期せぬ EOF が検出されました。”のエラーがでてしまいます。

  • CGIのソースの整列方法

    すみません、レンタルのCGI板をDLしたのですが、設定しようとノートパッドで開くと.....ソースが連続して?表示されて、とても見づらいのです(~_~;) そこの管理人さんが不在がちで(涙 改行される部分が、スペースになって表示されてしまいます。 以前はこんなこと無かったのですが.... なにか設定を弄ってしまったのかな~(-_-)? いい方法ご存知の方、よろしくお願いいたします<m(__)m>

    • ベストアンサー
    • CGI
  • ソースがかけなくて困っています。

    javaのプログラミングについての質問です。 入力ファイルを読み込んで、System以外の java.langパッケージのクラスを使用しないで ファイル中の英文字を大文字に変換して 画面に表示することって出来るんでしょうか? 一昨日から考えているんですが どうにも解りません・・・・ ASCIIコードを使用して・・・・というのは解ったんですが どうソースを書けば良いのか考えても 見当が付きません・・・・ なにかサンプルがあれば助かるんですが・・・・

    • ベストアンサー
    • Java