• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:BinaryFileReader型に解決できない)

BinaryFileReader型に解決できない

このQ&Aのポイント
  • 現在eclipseでjavaをやってみています。バイナリファイルの書き込みというのをやってみたくて、次のサイトのバイナリファイル書き込みサンプルを試しています。
  • コードの中でBinaryFileReaderのところでエラーが出ています。エラーメッセージは「BinaryFileReaderを型に解決できませんでした」と出力されます。
  • どのように解決すれば良いか教えていただきたいです。

質問者が選んだベストアンサー

  • ベストアンサー
  • nurorin
  • ベストアンサー率40% (10/25)
回答No.1

このプログラムを動かすには、あらかじめ以下のBinaryFileReaderクラスを作っておくことが前提になっているみたいですね。 http://www.ra13.org/java/BinaryFileReader.html 上記のURLのBinaryFileReaderクラスをBinaryFileWriterクラスと同じパッケージ内に作ってみてください。

diy_sunny
質問者

お礼

回答頂きありがとうございます。BinaryFileReaderクラスというのを自分で用意しないといけないのですね。助かりました。

全文を見る
すると、全ての回答が全文表示されます。

その他の回答 (1)

  • wormhole
  • ベストアンサー率28% (1622/5659)
回答No.2

java7には標準で http://docs.oracle.com/javase/jp/7/api/ これだけのクラス(インターフェイスも含む)があります。 この中に含まれていないのであれば別途入手しないといけないか自分で作らないといけないか、その辺の判断はつくかと思います。 まぁこういう場合は、参照してるサイトを一通り見てみるべきじゃないかとは思いますが。

diy_sunny
質問者

お礼

回答頂きありがとうございます。便利なサイト教えて頂きありがとうございます。

全文を見る
すると、全ての回答が全文表示されます。

関連するQ&A

  • バイナリの読み込みから出力まで

    こんばんは、バイナリの扱いについて質問させてください。 やりたいことはこんな感じです。 (1) hoge.mp3ファイルをバイナリで読み込む。 (2) バイナリの1000バイト目から200バイトの範囲を抜き出す。 (3) 抜き出したバイナリをファイルshort.mp3として保存する。 下の構文だとそもそもコンパイルすら通らないのですが、 やりたいことを少しでも伝えたいので、あえて書かせていただきました。 どうかよろしくお願い致します。 FileInputStream fis = new FileInputStream("hoge.mp3"); // hoge.mp3の1000バイト目から200バイト分抜き出す。 byte[] pick = fis.read(fis, 1000, 200); DataOutputStream dout = new DataOutputStream(new FileOutputStream("short.mp3")); dout.write(pick);

    • ベストアンサー
    • Java
  • バイナリ読み込みについて

    お世話になります。バイナリファイルの読み込みについて質問させてください。 バイナリファイルはC#で出力したものでushort型(符号無し16bit)で書き込んでいます。 //C#でushort型データのバイナリ書き込み例 private static void WriteBinary(){  ushort data=5000;   BinaryWriter bw = new BinaryWriter(new FileStream(@"C:\Binary.txt", FileMode.Create, FileAccess.Write)); bw.Write(data); bw.Close(); } これをJavaで読んで、書き込んだ値5000を取得したいのですが、 C#のushortは符号無しの2Byteなんので、Javaでそれに相当するように readUnsignedShortで読み込んだのですがうまくいきません。どなたかご教授ください。 //Javaでushort型データのバイナリ読み込み private static void ReadBinary(){  DataInputStream dis = new DataInputStream(new FileInputStream("C:\\Binary.txt"));  int data = dis.readUnsignedShort();  System.out.println(data);  } すると「34835」と表示されます。その他、readShort()→-30701 read(byte[2])として byteに格納してbyte[0]と[1]を足しても-101になり取得できませんでした。 保存されたデータは符号なしの16ビットなのでreadUnsignedShort()で取得できると 思ったのですが、何か根本的に考え方が違うのでしょうか?? ※もちろんC#でReadInt16で読み取ると正常に5000を取得できした。

    • ベストアンサー
    • Java
  • Eclipse 3.1.2で Java1.5の新機能の可変引数のString#formatを使用するには?

    Eclipse 3.1.2環境でJavaのプログラミングをしていますが、Java1.5の新機能であるCのprintfに対応する可変引数を受け取るString#formatを使おうとしていますが、Eclipseでコンパイルエラーが発生してコンパイルできません。 Eclipse外で JDK1.5を使いコンパイルすれば問題ないのですが、Eclipseではうまくいきませんどうすればいいのでしょぅか。 EclipseのWorkspaceのプロパティ設定ではきちんとJRE1.5のパスを指定しています。

    • ベストアンサー
    • Java
  • 重複エラーを解決するには

    こんにちは。 次のようなエラーが出て困っています。 ”パッケージ名.Canvasクラスの定義が重複しています。  すでにCanvas.javaと○.javaで定義されています。” そこで、 1,現在コンパイルしているファイルで、Canvas.java   と○.javaでの定義が重複しているのかを確認しました。   しかし、その二つのファイルが、現在コンパイルしているファイル自身でした。 2,Canvas.javaと○.javaのプログラムの中身を見ました。   しかし、Canvasクラスを定義していたのは片方だけでした。 3,このエラーが出るようになる前に行った作業(一度、Canvas.javaを削除して   再び作成し直した)ことが原因で、どこかにbackupfileが作成されてしまった。 →解決できず JBuilderを使っています。どうしたら解決できるのか、教えて下さい。お願いします。

    • ベストアンサー
    • Java
  • シンボルを解決できません(初心者)

    一つのプログラムに対して、いくつかのファイルに分けて 記述されているとき、 たとえば、ファイル A.java と B.java があって 【A.java】 package shop;  ・  ・  public class Shop {   ・   ・   ・ } 【B.java】 packeage shop;  ・  ・ public class Buy(Shop shop){ } という感じで、A.java内で定義したクラス型を他のファイルで使うと、 コンパイル時に、「シンボルを解決できません」というコンパイルエラーが出て コンパイルできません。 こういう場合はどうすれば、良いのでしょうか? 初心者なので、非常に初歩的な質問かと思いますがよろしくお願いします。

    • ベストアンサー
    • Java
  • Eclipse3.4でSVNのJAVAプロジェクト

    Eclipse3.4でプロジェクトが「Javaプロジェクト」の場合には .javaファイルの保存でそのまま.classへとコンパイルされます。 これがsubversionで管理されているJavaプロジェクトの場合、 subscripseプラグインでプロジェクトをチェックアウトしても、 「Javaプロジェクト」とは認識されていません。 この状態ですと、.javaファイルを保存しても、.classは自動では 作成(コンパイル)されません。なので実行もできません。 どうすればSubversionで管理されているプロジェクトを、コンパイルして 実行できるのか教えていただけないでしょうか。 よろしくお願いいたします。

    • ベストアンサー
    • Java
  • どうしてもプログラムが動いてくれません....

    import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.io.Reader; import java.io.StringWriter; public class Tese { public static void main(String[] args) throws InterruptedException, IOException { ★ ProcessBuilder pb = new ProcessBuilder("cmd", "/C", "dir", "C:\\Program Files\\Java"); ★ Process p = pb.start(); BufferedReader br = new BufferedReader(new InputStreamReader(p.getInputStream())); Catcher c = new Catcher(br); c.start(); p.waitFor(); p.destroy(); System.out.println(c.out.toString()); } } class Catcher extends Thread { Reader in; StringWriter out = new StringWriter(); public Catcher(Reader in) { this.in = in; } public void run() { int c; try { while ((c = in.read()) != -1) { out.write((char)c); } } catch (IOException e) { e.printStackTrace(); } } ★で囲んでいる部分なのですが,コンパイルすると Exception in thread "main" java.lang.Error: コンパイル問題が未解決です。 コンストラクター ProcessBuilder(String, String, String, String) は未定義です。 at Tese.main(Tese.java:10) というエラーが出ます. どうすればエラーが消えるかわかる方いらっしゃったら,ぜひ助言頂けないでしょうか・へj

    • ベストアンサー
    • Java
  • Eclipse/MacのExtentions使い方

    初めまして、Javaの勉強を始めたばかりの者です。 Macを使っています。 この度 /Library/Java/Extentions/にjarファイルを追加して追加したクラスを 使用するプログラムを作りました。 今後開発するにあたり、統合開発環境を使用していきたいと考えEclipseをインストールしました。 Eclipseで拡張ライブラリが使えず、もう何日も困っています。 どなたか助けて下さい。 /Library/Java/Extentions/に追加したjarファイルを使用するにはどうすれば良いのでしょうか? 何度も自分で試してみたのですが、どうしても追加したはずのクラスを使えないです。 プログラムの内容自体はコンソールで実行して見ているので間違いないはずなのですが、、、下記のようなエラーメッセージが出ます。 ------------------------------------------------------------------------------------------------------ Exception in thread "main" java.lang.Error: Unresolved compilation problems: Dodai を型に解決できません Dodai を型に解決できません ------------------------------------------------------------------------------------------------------ 新規プロジェクト作成のところから教えて頂きたいと思います。 宜しくお願い致します。 因みにEclipseを使わずコンソールから実行したファイルは下記の場所でした。 /Users/xxxx/JavaPro/Sample3-2/FusenExec.java javac FusenExec.javaでコンパイル FusenExec.classが出来る。 java FusenExecで実行 ・下記にEclipseでプロジェクトを作成した手順を記します。 新規プロジェクトの作成 ・ファイル>新規プロジェクト>Javaプロジェクト選択>JREの種類で「実行環境JREの使用」→JavaSE-1.6 ・Java設定 JREシステム・ライブラリー「JavaSE-1.6」となっていて、配下に追加したjarファイルが表示されています。 ・パッケージエクスプローラでsrcを選択 ファイル>新規>クラス パッケージ名:jp.xxx.eclipsebook 名前:Sample スーパークラス:java.lang.Object←元々書かれていた ・ソース --------------------------------------------------------------------- package jp.kuu.eclipsebook; public class Sample { /** * @param args */ public static void main(String[] args) { // TODO 自動生成されたメソッド・スタブ // 1枚目の付箋土台 Dodai fusen1 = new Dodai(); fusen1.setSize(200,50); fusen1.setVisible(true); } } --------------------------------------------------------------------------------- また、Eclipseで自動作成されたディレクトリの.javaファイルはターミナルからjavacコマンドでコンパイルしようとしても、コンパイル出来ませんでした。 何故なのでしょうか。何だか解らないことが多く、こんがらがって混乱しています。 どなたか助けて下さい。お願いいたします。 開発環境 ・MacOS10.6.8 ・java version 1.6.0_26(元々JDK(Java SE Development Kit)が入っていた。) ・拡張用ライブラリdodai.jarの場所は/Library/Java/Extensions/配下 ・統合開発環境 Eclipse3.7 ・日本語化 Pleiades1.3.3

  • javaのGenericsが良く分かりません

    かなり以前に java プログラミングを少しばかりやっていたので java は少し分かるのですが、最近 また java プログラミング始めてみたのですが、Generics なる機能が「Java SE5.0から導入されたようですが、良く分かりません。 ご存知の方がいらしたら どうか ご教授下さいませm(_ _)m 開発環境 eclipse java 8 class Box<T> { // Object obj; T obj; @SuppressWarnings("unchecked") public T getT(){ return obj; } public void setT(T o){ obj = o; } @SuppressWarnings("unchecked") public void setTExtends(Box<? extends T> o){ obj = (T)o; } } Box<Number> boxN = new Box<Number>( ); Box<Integer> boxI = new Box<Integer>( ); boxN.setT((Number)new Integer(1)); // 当然、正常にコンパイルされる。 boxN.setT(new Integer(1)); // なぜか正常にコンパイルされる。 boxN.setT(boxN.getT()); // 正常にコンパイルされる。 boxN.setT(boxI.getT()); // なぜか正常にコンパイルされる。 boxN.setTExtends((Number)new Integer(1)); // なぜかコンパイル・エラーになる。 boxN.setTExtends(new Integer(1)); // なぜかコンパイル・エラーになる。 boxN.setTExtends(boxN.getT()); // なぜかコンパイル・エラーになる。 boxN.setTExtends(boxI.getT()); // なぜかコンパイル・エラーになる。 boxI.setT(new Integer(1)); // 当然、正常にコンパイルされる。 boxI.setT(boxI.getT()); // 当然、正常にコンパイルされる。 boxI.setTExtends(new Integer(1)); // なぜかコンパイル・エラーになる。 boxI.setTExtends(boxI.getT()); // なぜかコンパイル・エラーになる。

  • 「SimpleEntry を型に解決できません。」とエラーが出て悩んでます

    Eclipseでこのプログラムを実行しましたが, http://d.hatena.ne.jp/nowokay/20080707#1215460276 「SimpleEntry を型に解決できません。」 とエラーをはきます。 javaのバージョン違いかと思い,コマンドウィンドウを開いて,  java -version としましたが,version1.6.0_02 でSimpleEntryについて調べましたが, version1.6から採用しているらしく(http://java.sun.com/javase/ja/6/docs/ja/api/java/util/AbstractMap.SimpleEntry.html) 問題はない気がするのですが,何が原因なのかわかりません。 とにかくこのサイトのプログラムを一度実行してみたいです。 解決策を教えてください