イメージをアップロードするようユーザーに求めています。これはどのイメージフォーマットでも構いません。Base64から画像へのイメージ
私はbase64のデータを.Netコントローラに渡すだけでなく、ファイル名(そこから拡張子を得ることができます)を渡します。
次に、そのbase64文字列をImageに変換します。
public static Image Base64ToImage(string base64String)
{
// Convert base 64 string to byte[]
byte[] imageBytes = Convert.FromBase64String(base64String);
// Convert byte[] to Image
using (var ms = new MemoryStream(imageBytes, 0, imageBytes.Length))
{
Image image = Image.FromStream(ms, true);
return image;
}
}
私はエラーを取得する:
それは非ベース64文字、二つ以上のパディング文字、またはパディング文字の間で不正な文字が含まれているように、入力が有効なベース-64文字列ではありません
私は、base54文字列が持っているからだと思う:
"データ:画像/ JPEG; base64で、/ 9J/4AAQSkZJRgABAを...." 開始時に。
"data:image/jpeg; base64"をトリミングして保存する必要がありますか?ファイルタイプに関するデータを削除しているので、別の場所に指定する必要がありますか?
私が見つけたすべての例は、正面から何かを整えていないようです。彼らは文字列を保存するだけです。私は推測している、私の側の何かは、ヘッダーを追加していますか?
'data:image/jpeg; base64 'を削除するだけで、イメージをファイルシステムに保存するときにタイプを指定できます。 –
ありがとうございます。イメージがデータベースに送信されています(したがって、後でバイト[]に変換されます)。ファイルの種類をデータベースに保存する必要があるので、読み込んだときに読み込む形式を知っていますか? – Craig
blobとして 'base64'を保存してみませんか? –