- ベストアンサー
ストリームについて
leaz024の回答
まず「STREAM=(FILE *)型の変数」というのは、明らかに誤解ですので補足しておきます。 さて「シーケンシャル」についてですが、これは「順次的な」という意味で、「sequential access(順次アクセス)」「sequential logic(順序論理)」など、コンピュータ関連でも様々なところで使われています。 また「シーケンシャルアクセス」とは「ファイルの先頭から順に連続的にアクセスする方法」で、通常のテキストファイルなどではこの方法でファイルアクセスを行います。 これに対し「ランダムアクセス」とは「ファイル内の任意の場所をとびとびにアクセスする方法」で、対象となるファイルは、固定長のレコード構造を持っている必要があります。 C/C++では、構造体配列をバイナリ形式でファイルに記録する場合に、ランダムアクセスが利用できます。 次に「コスト」についてですが、ここでは「ランダムアクセスをすると極端に性能が低下する」という意味で使っています。もちろん、高度な技術によって性能をカバーすることが出来たとしても、その技術開発に多大なコスト(ここでは時間や人件費を指す)がかかってしまうことは言うまでもありませんね。
関連するQ&A
- Java ストリームをわかりやすく教えてください
Javaを独学で学んでいる初心者です。 ストリームの意味がよくわからなく困っています。 参考書には「入出力機能を支えている概念がストリーム」と書いてあるのですが意味が分かりません。 まだまだ勉強不足で知識が至らないので、簡単なたとえ話などで説明していただけると嬉しいです。
- ベストアンサー
- Java
- 標準ストリームが理解できません
標準ストリームの意味が理解できず困っています。 色々なサイトを回って調べてみたのですが、あるサイトではデータが通る経路だと書かれていたり、またあるサイトでは入出力装置から情報を受け取ったり情報を渡したりするということだ、と書かれていたりなにが正しいのかさっぱりです。 普通に標準入出力関数とかは使ってきましたが、stdin等は理解しておく必要がありますよね?標準ストリームは具体的にどういう物か教えていただけたらうれしいです。回答お待ちしています。
- ベストアンサー
- C・C++・C#
- ストリームについて具体的に
ストリームは入出力装置へのアクセスのための情報を抽象化した抽象データ型だそうですが(Wikipediaより)、それは具体的にどうなっているのですか?FILE構造体のようなものでしょうか。 ・ストリームにはどんな情報が入っているのですか? ・ストリームはどこに展開されているのですか?メモリでしょうか。 あと、プログラミングは初心者なのでチンプンカンプンな質問をしているかも知れません。その場合は「何か勘違いしてますよ~」と指摘してくださると嬉しいです。回答お待ちしています。
- ベストアンサー
- C・C++・C#
- ファイルを開く、ストリームを結びつける、とは?
C言語の標準関数の説明の中に、 「ファイルを開く」 「ストリームと結びつける」 といった表現がでてくるのですが、これはどういう意味ですか? freopenを理解しようとしていたのですが・・・。 ファイルを開くとはFILE構造体を展開する?ファイルディスクリプタをシステムに登録する?・・・意味がいまいち掴めません。「ストリームと結びつける」も同様です。 これらは具体的にどういう意味なのでしょうか?回答よろしくお願いします。
- ベストアンサー
- C・C++・C#
- ストリームについて
バイト・ストリームとキャラクタ・ストリームの2種類が存在していますが、バイト・ストリームは、生のバイト (イメージデータなど) を読み込む時、また、文字(テキストファイル)を読み込むときはキャラクタ・ストリームを利用するという認識で良いのでしょうか? テキストファイル(アルファベット、日本語)処理ならどんな場合でもキャラクタ・ストリーム(FileReader,FileWriter)を使えばいいという考えでよろしいのかということでしょうか? 逆にバイト・ストリームで読み込んで処理する場合も可能ですよね? その場合、テキストファイルをバイト・ストリームで扱うメリットってあるのでしょうか? 何故疑問に思ったのかと言いますと、参考書にバイト・ストリームを扱った例文があり、テキストファイルを処理していたためです。テキストファイルの処理ならキャラクタストリームでいいんじゃないかと思い、逆にバイトストリームで扱うメリットを知りたかったのです。 よろしくお願いいたします。
- ベストアンサー
- Java
- ストリーム テキスト
初心者の質問です。よろしくお願いします。 Javaのストリームを勉強しているのですが、FileReaderでテキストファイル(txt)を入力するにはどうすれば良いのでしょうか? Javaファイルは正しく入力できたのですが。 FileReader fr=new FileReader(args[0]);では、問題があるのでしょうか。 よろしくお願いします。
- ベストアンサー
- Java
お礼
ご丁寧なご解答ありがとうございました。 おかげさまで理解することができました。