ディスクにImageを保存する必要があるコードを実行しています。 私はグーグル計算のubuntuインスタンスで.net core 1.0を使用しています。ImageオブジェクトにはImageProcessorCoreライブラリを使用しています。Ubuntuで.net coreを使用してディスクに画像を保存する(GCloud Compute Engine)
これは、イメージをCloud Storageバケットからバイト配列に取り出し、ディスクに保存しようとするコードです。
if (!Directory.Exists(dir))
Directory.CreateDirectory(dir);
if (!File.Exists(file))
{
byte[] bytes = mediaAdapter.GetMedia(Id, Resolution);
using (MemoryStream stream = new MemoryStream(bytes))
{
Image image = new Image(stream);
using (FileStream save = File.Create(file))
image.Save(save);
}
}
using (FileStream read = File.OpenRead(file))
{
Image img = new Image(read);
return new BoundingRect(img.Width, img.Height);
}
このコードは、.netコアを実行しているWindowsマシンでは完全に実行されますが、例外がスローされずに計算エンジンで実行が停止します。
PS:Directory.CreateDirectory(dir);計算エンジンにディレクトリを作成します。
ご協力いただければ幸いです。あなたが使用して正確にあなたがそれを手に入れたしているImageProcessorCoreのバージョンは何THX
? – svick
バイナリデータをディスクに保存するために 'Image'クラスは必要ありません。画像を処理したい場合にのみ必要です。 'File.WriteAllBytes(file、bytes)'を使用してください –
あなたのご意見ありがとうございます、私は世話をしていない許可の問題でした!私は保存していたディレクトリをchownする必要がありました。 – Salem