🪟

Processingの画像読み込みができなくなりハマったメモ【Windows】

2024/12/13に公開

エラーの内容

PImage gazou = loadImage("map-world.jpg");

エラー文

The file "mapworld.jpg" is missing or inaccessible, make sure the URL is valid or that the file has been added to your sketch and is readable.

map-world.jpgが存在しないと言われてしまった

試したこと① dataフォルダーの確認

スケッチと同じ階層のdataフォルダーの中に、map-world.jpgが存在するかどうか確認

ちゃんと存在している

拡張子もOKそう

試したこと② Processingのインストールをやり直す

自分はたまにProcessingの作業ファイルの場所を変にいじったりすることがある。そういうことをしすぎて、Processingのパスの設定をおかしくしてしまった気がしている。そのため、一旦すべてリセットするか?という気持ちになった。

一旦Processing関連のファイルをすべて削除した上で、改めて公式サイトからインストールしてきて、同じコードを動かしてみた。

しかし、やはり先ほどと同じエラーが出てしまう。

この時点でかなり絶望は深まっています。

試したこと③ Processingの作業フォルダーの確認

ファイル→設定

デフォルトのProcessingの作業フォルダー 確認する

ちゃんとドキュメントフォルダーが選べてそうではあるのだが、よく見るとパスが怪しげな文字化けをしている

エクスプローラーにて、「ドキュメント」の上で右クリック→パスのコピー

コピーしたパスを適当なテキストファイルに貼りつけてみると...

C:\Users\<ユーザー名>\OneDrive\문서

_人人人人_
> 문서 <
 ̄ Y^Y^Y ̄

「文書」という意味らしい
マジでなぜ韓国語????

少し調べたところ、あまり起きることではないっぽいが、OneDriveで言語設定をしてないと韓国語や中国語でフォルダー名が作られてしまうことがあるらしい

エクスプローラー上では「ドキュメント」という日本語名で見えてる、というのが気づきづらいポイントかも(泣)

C:\Users\<ユーザー名>\OneDrive\문서

ちなみに、ターミナルで確認したところ、このフォルダー↑とは別に、

C:\Users\<ユーザー名>\Documents

このフォルダー↑も存在はしていて、中身は空でした!

対処

いろいろ対処方法はありえるとは思うが、とりあえず自分は、C:\Users\<ユーザー名>\Documents というパスにすべてを統一することにした。

①デフォルトのProcessingの作業ディレクトリを変更

以下のように変更

②Processingのスケッチを新しく作るときは、C:\Users\<ユーザー名>\Documents\Processing\のなかに作るようにする

こんな感じ↓

③画像などデータを入れるときも同じようにする

C:\Users\<ユーザー名>\Documents\Processing\<スケッチ名>\data\のなかに配置しましょう

これで自分は画像読み込めるようになりました!読み込めなかったら、すみません!

まとめ

OneDriveの言語設定をほったらかしにしたり、適当にOneDrive連携したり解除したり、Processingの作業ディレクトリも適当に作ったりしていると、本当に恐ろしいことになります。

拙い(というかこれが最適な対処なのか自信がない)記事ではありましたが、最後までお読みいただき、ありがとうございました!

Discussion