「Windows API/ファイル入出力」の版間の差分

削除された内容 追加された内容
Windows API』 2019年9月4日 (水) 21:48‎ から該当する章をそれぞれのサブページに移動。
 
Ef3 (トーク | 投稿記録)
{{Nav}},s/命令/関数/
1 行
{{Nav}}
== ファイルの入出力 ==
=== fopenの使用許可を与える方法 ===
122 ⟶ 123行目:
 
 
そして、このファイル操作用ハンドルの設定の作成をする際に、目的のファイルのオープンもされる仕様になっている。(CreateFileの第一引数で、"test.txt" のように、対象のファイルを指定しているので、どのファイルを開く必要があるかを、この関数を使う命令関数の実行時点でOSが既に知っている。)
 
 
170 ⟶ 171行目:
 
==== 共有モードとは? ====
「共有モード」とは何かというと、上記のプログラムがファイルを開いている間、後続のアクセス命令関数がアクセスできるかどうかを指定することです。
 
共有モードを「0」にすると、ファイルハンドルを閉じてからでないと、ほかのプログラムがアクセスできません。
351 ⟶ 352行目:
;備考
 
もし、すでに char 型やfprintf命令関数などで外部ファイルの文字列を読み書きするソースコードのある場合、わざわざ宣言時の型 wchar_t 型 や TCHAR型などで読み取るように書き換えなくても、
 
<code>WideCharToMultiByte() </code> 関数 などの、文字列のための型変換の関数があるので、この関数による命令関数を、適切な箇所に追加すればいい。
 
なお <code>WideCharToMultiByte() </code> 関数 の場合、これを使えば文字列の型をワイド型からマルチバイトに変換できる。windows7以降(Win7も含む)のWindowsでは、普通のテキストファイルを標準C言語にある命令関数(fopen や fgets など)や文字列型(char 型)で外部ファイルとの読み書きをする場合、Windows内部では読み書き後の文字列データはワイド文字列として処理されている場合があるので、その場合には、この命令関数だけでマルチバイト文字に変換できる。