Instance Method インスタンスメソッド

URLForDirectory:inDomain:appropriateForURL:create:error:

Locates and optionally creates the specified common directory in a domain. あるドメインにおいて、指定される一般的ディレクトリの位置を突き止めて、任意に作成します。

Declaration 宣言

- (NSURL *)URLForDirectory:(NSSearchPathDirectory)directory 
                  inDomain:(NSSearchPathDomainMask)domain 
         appropriateForURL:(NSURL *)url 
                    create:(BOOL)shouldCreate 
                     error:(NSError * _Nullable *)error;

Parameters パラメータ

directory

The search path directory. The supported values are described in NSSearchPathDirectory. 検索パスディレクトリ。サポートされる値は、NSSearchPathDirectoryで記述されます。

domain

The file system domain to search. The value for this parameter is one of the constants described in NSSearchPathDomainMask. You should specify only one domain for your search and you may not specify the NSAllDomainsMask constant for this parameter. 検索するファイルシステムドメイン。このパラメータに対する値は、NSSearchPathDomainMaskで記述される定数の1つです。あなたは、ただ1つのドメインだけをあなたの検索に対して指定すべきです、そしてあなたはNSAllDomainsMask定数をこのパラメータに対して指定しないでしょう。

url

The file URL used to determine the location of the returned URL. Only the volume of this parameter is used. 返されるURLの位置を決定するために使われるファイルURL。このパラメータのボリューム名だけが使われます。

This parameter is ignored unless the directory parameter contains the value NSItemReplacementDirectory and the domain parameter contains the value NSUserDomainMask. このパラメータは、directoryパラメータが値NSItemReplacementDirectoryを含むそしてdomainパラメータが値NSUserDomainMaskを含む場合を除いて、無視されます。

shouldCreate

Whether to create the directory if it does not already exist. それがまだ存在しないならば、ディレクトリを作成するかどうか。

When creating a temporary directory, this parameter is ignored and the directory is always created. 一時ディレクトリを作成する場合、このパラメータは無視されます、そしてディレクトリは常に作成されます。

error

On input, a pointer to an error object. If an error occurs, this pointer is set to an actual error object containing the error information. You may specify nil for this parameter if you do not want the error information. 入力では、エラーオブジェクトへのポインタ。エラーが発生するならば、このポインタはエラー情報を含んでいる実際のエラーオブジェクトへと設定されます。あなたは、nilをこのパラメータに対して指定するかもしれません、もしあなたがエラー情報を望まないならば。

Return Value 戻り値

The NSURL for the requested directory. If an error occurs, this method returns nil and assigns an appropriate error object to the error parameter. 要請されたディレクトリに対するNSURL。エラーが発生するならば、このメソッドはnilを返して、適切なエラーオブジェクトをerrorパラメータに割り当てます。

Discussion 議論

You typically use this method to locate one of the standard system directories, such as the Documents, Application Support or Caches directories. After locating (or creating) the desired directory, this method returns the URL for that directory. If more than one appropriate directory exists in the specified domain, this method returns only the first one it finds. あなたは、概してこのメソッドを使って標準システムディレクトリの1つの位置を突き止めます、例えばDocumentsApplication SupportまたはCachesディレクトリなど。望むディレクトリの位置を突き止めた後、このメソッドはそのディレクトリに対するURLを返します。複数の適したディレクトリが指定されたドメインに存在するならば、このメソッドは、それが見つけた最初のもののみを返します。

You can use this method to create a new temporary directory. To do so, specify NSItemReplacementDirectory for the directory parameter, NSUserDomainMask for the domain parameter, and a URL for the url parameter which determines the volume of the returned URL. あなたは、このメソッドを使って新しい一時ディレクトリを作成できます。そうするには、NSItemReplacementDirectorydirectoryパラメータに、NSUserDomainMaskdomainパラメータに、そしてあるURLを、返されるURLのボリュームを決定するurlパラメータに指定してください。

For example, the following code results in a new temporary directory with a path in the form of /private/var/folders/d0/h37cw8ns3h1bfr_2gnwq2yyc0000gn/T/TemporaryItems/Untitled/: 例えば、以下のコードは、/private/var/folders/d0/h37cw8ns3h1bfr_2gnwq2yyc0000gn/T/TemporaryItems/Untitled/の形式でのパスをもつ新しい一時ディレクトリという結果になります:


NSURL *desktopURL = [NSURL fileURLWithPath:@"/Users/jappleseed/Desktop/"
                               isDirectory:YES];
NSError *error = nil;


NSURL *temporaryDirectoryURL = [[NSFileManager defaultManager] URLForDirectory:NSItemReplacementDirectory
                                                                      inDomain:NSUserDomainMask
                                                             appropriateForURL:desktopURL
                                                                        create:YES
                                                                         error:&error];
NSLog(@"%@", temporaryDirectoryURL);


if (error) {
    // Handle the error.
}

See Also 参照

Locating System Directories システムディレクトリの位置を突き止める