tagCANDY CGI VBレスキュー(花ちゃん) の Visual Basic 2010 用 掲示板(VB.NET 掲示板)
VBレスキュー(花ちゃん) の Visual Basic 2010 用 掲示板(VB.NET 掲示板)
[ツリー表示へ]  [ワード検索]  [Home]

タイトル Re^2: PictureBox1.Image.Save("C:\Test.bmp")
投稿日: 2020/08/07(Fri) 08:59
投稿者魔界の仮面弁士
> PictureBox1.Image.Save("C:\Test.bmp")

そこは通常、読み取り専用の場所です。管理者モードで実行しない限りは。

VB に限らず、それ以外のソフトウェア…たとえば
「ペイント」や「メモ帳」や「Excel」などから、
C:\ 直下にファイルを保存しようとした場合も、
アクセス許可が無いということで警告され、保存が拒否されますよね。



>  PictureBox1.Image.Save("C:\\test\\new1.bmp", _
>                       System.Drawing.Imaging.ImageFormat.bmp)

\ 記号を重ねて記述したのは何故でしょう?

たとえ実際に保存できているとしても、実際に \\ を含むパスを指定しているわけでは
無いのであれば、そのようなパス指定は誤りと言えるかと思います。


たとえば C# の場合、「\」とそれに続く文字がエスケープシーケンスと見做されるため、
"C:\test\new1.bmp" というパスを表す場合に、
 label1.Text = "C:\\test\\new1.bmp"; // \\ 表記
 label2.Text = @"C:\test\new1.bmp"; // 逐語的文字列リテラル
などの表記が使われますが、Visual Basic ではエスケープシーケンスが無いので、
 Label3.Text = "C:\test\new1.bmp"
のように、単一の「\」表記で表せるはずです。

hhttps://docs.microsoft.com/ja-jp/dotnet/standard/io/file-path-formats

- 関連一覧ツリー をクリックするとツリー全体を一括表示します)

古いスレッドにレスはつけられません。