2013-05-08 30 views
0

我想JPG和PNG之間的一些文件轉換與ImageMagick的,但我不斷收到一個錯誤:No such file or directory很顯然,我已經檢查,以確保該文件確實存在。我認爲這可能是某種路徑長度限制,但我在Windows和Linux中遇到同樣的問題。這個imagemagick轉換命令有什麼問題?

的命令是:

"C:\Program Files\ImageMagick-6.8.3-Q16\convert.exe" "C:\Tomcat 7\inst-jq\temp\WF\483f95bc-dcd7-405c-a04d-dc8fabbe79e2\eb19c8af-a5d8-4fba-a439-bc83351d2577\Export\4211a260-3565-4c82-be72-7a0ad8337956\content\William Shakespeare\William Shakespeare\The Complete Works\Oberon,Titania,Puck,Fairies_William_Blake_c1786.jpg" "C:\Tomcat 7\inst-jq\temp\WF\483f95bc-dcd7-405c-a04d-dc8fabbe79e2\eb19c8af-a5d8-4fba-a439-bc83351d2577\Store\e7256aee-ab8b-42e6-91a6-525c921679cf\content\William Shakespeare\William Shakespeare\The Complete Works\Oberon,Titania,Puck,Fairies_William_Blake_c1786.png"

至於是什麼,我缺少的將是巨大的任何建議。

回答

2

我斷定它是至少一個內部路徑長度的限制,在ImageMagick的 - 它也過去視窗限制(128個左右字符)運行良好。

C/C++程序通常分配用於文件名/路徑/輸入一個固定的緩衝器 - 這將是非常不太可能超過256個字符。

你可能想重新訪問您的文件系統存儲的設計。

如果你能當文件很短的路徑上運行轉換,這將確認我的答案是正確的。

+0

Windows路徑長度極限是128個字符?你有沒有參考?感謝有關imagemagick路徑長度限制的建議。 – RoryB 2013-05-08 09:40:17

+0

我有一個260-char限制的引用,包括終止NUL字符。有了我在IIRC上工作的文件存儲應用程序,我們意識到了一些限制128,因此避免了很長的路徑 - 但找不到參考。 http://msdn.microsoft.com/en-us/library/windows/desktop/aa365247(v=vs.85).aspx – 2013-05-08 09:45:42

+1

是的,看起來像是一個內部路徑長度限制。謝謝。 – RoryB 2013-05-08 10:22:26

0

Any suggestions as to what I'm missing would be great.

  1. 儘量避免空間中的文件名
  2. 儘量避免其他人物,如,:;

我猜ImageMagick的可能治療,作爲文件分隔符。