【KLAU PPK】IndexOutOfRangeExceptionが出るのはなぜですか

原因は2つ確認されています。ひとつはNovAtelデータと同じフォルダに「.YYo」形式の観測ファイルが存在するケース、もうひとつはフォルダ名・ファイル名・パスに日本語(2バイト文字)が含まれるケースです。いずれも該当ビルドで修正されています。

回答

原因1:NovAtelデータと同じフォルダに .YYo 観測ファイルがある

  1. ソフトはバイナリ(.nov)からデータを抽出する際に、RINEX観測ファイル NOV0000.26o を生成する。
  2. その後、.26o ファイルを .obs にリネームする。
  3. このとき同一フォルダに別の .26o ファイル(例:00581840.26o)があると、最初に見つかったそのファイルを意図せずリネームしてしまう。
  4. 結果として本来読み込むべきRINEX観測ファイルが存在せず、観測データを欠いたまま次の計算処理に進んでエラーとなる。

この不具合は KlauPPK J Desktop 7.20 Build1 で発生し、7.21系で修正されています。

原因2:パスに日本語(2バイト文字)が含まれる

  1. ソフトが内部で利用する一部のユーティリティが日本語文字に対応しておらず、日本語を含むパスで同じエラーが発生する。
  2. 当初の回避策は短縮名(ショートパス)を使う方式だったが、日本語コードページのWindowsでは短縮名が生成されないため機能しなかった(コマンドプロンプトで dir /x を実行しても該当フォルダの短縮名欄が空欄になる)。
  3. 運用上の確実な回避策は、フォルダ名・ファイル名・パスをすべて半角英数字にすること。
  4. ソフトのインストール先フォルダに日本語文字が含まれる場合は回避できないため、インストール先は必ず日本語を含まないパスにする。
  5. 7.21.6 では日本語コードページ環境での修正が行われ、日本語パス・日本語ファイル名でも処理が正常に完了することが確認されている。

うまくいかない場合の切り分け

症状 確認すること 結果と次の手
基準局データ入力(Base Station)の段階でIndexOutOfRangeExceptionのポップアップが出て先に進めない NovAtelデータ(.nov)と同じフォルダに .26o など「.YYo」形式の観測ファイルが置かれていないか 置かれている場合は別フォルダへ退避して再処理する。恒久対処は7.21系以降への更新。
更新版でも同じ例外が出る データフォルダ名・ファイル名・保存先パス、およびソフトのインストール先パスに日本語が含まれていないか すべて半角英数字に変更して再実行する。インストール先に日本語が含まれる場合は、日本語を含まないパスへ入れ直す。
半角英数字に変更しても解消しない 使用中のビルド番号 日本語コードページ環境への対応は7.21.6で行われている。それ以前のビルドを使用している場合は更新する。

前提条件・注意事項

  • 本記事は2026年7月時点で確認された内容です。使用中のビルド番号により挙動が異なるため、まずビルド番号を確認してください。
  • 7.21.6より前のビルドでは日本語パスは非対応です。
最終更新:2026年9月
上部へスクロール