File.Move File.Move File.Move File.Move Method

定義

オーバーロード

Move(String, String) Move(String, String) Move(String, String) Move(String, String)

指定したファイルを新しい場所に移動します。オプションで新しいファイル名を指定することもできます。Moves a specified file to a new location, providing the option to specify a new file name.

Move(String, String, Boolean) Move(String, String, Boolean) Move(String, String, Boolean) Move(String, String, Boolean)

指定したファイルを新しい場所に移動します。新しいファイル名を指定し、既に存在する場合は、対象ファイルを上書きするオプションが用意されています。Moves a specified file to a new location, providing the options to specify a new file name and to overwrite the destination file if it already exists.

Move(String, String) Move(String, String) Move(String, String) Move(String, String)

指定したファイルを新しい場所に移動します。オプションで新しいファイル名を指定することもできます。Moves a specified file to a new location, providing the option to specify a new file name.

public:
 static void Move(System::String ^ sourceFileName, System::String ^ destFileName);
public static void Move (string sourceFileName, string destFileName);
static member Move : string * string -> unit
Public Shared Sub Move (sourceFileName As String, destFileName As String)

パラメーター

sourceFileName
String String String String

移動するファイルの名前。The name of the file to move. 相対パスまたは絶対パスを含めることができます。Can include a relative or absolute path.

destFileName
String String String String

ファイルの新しいパスおよび名前。The new path and name for the file.

例外

リンク先ファイルが既に存在します。The destination file already exists.

- または --or- sourceFileName が見つかりませんでした。sourceFileName was not found.

sourceFileName または destFileNamenull です。sourceFileName or destFileName is null.

sourceFileNamedestFileName が長さ 0 の文字列であるか、空白のみで構成されているか、または InvalidPathCharsで定義されている正しくない文字を含んでいます。sourceFileName or destFileName is a zero-length string, contains only white space, or contains invalid characters as defined in InvalidPathChars.

呼び出し元に、必要なアクセス許可がありません。The caller does not have the required permission.

指定したパス、ファイル名、またはその両方がシステム定義の最大長を超えています。The specified path, file name, or both exceed the system-defined maximum length.

sourceFileName または destFileName で指定されたパスが正しくありません (マップされていないドライブ上のパスなど)。The path specified in sourceFileName or destFileName is invalid, (for example, it is on an unmapped drive).

sourceFileName または destFileName の形式が正しくありません。sourceFileName or destFileName is in an invalid format.

次の例では、ファイルを移動します。The following example moves a file.

using namespace System;
using namespace System::IO;

int main()
{
   String^ path = "c:\\temp\\MyTest.txt";
   String^ path2 = "c:\\temp2\\MyTest.txt";
   try
   {
      if (  !File::Exists( path ) )
      {
         
         // This statement ensures that the file is created,
         // but the handle is not kept.
         FileStream^ fs = File::Create( path );
         if ( fs )
                  delete (IDisposable^)fs;
      }
      
      // Ensure that the target does not exist.
      if ( File::Exists( path2 ) )
            File::Delete( path2 );
      
      // Move the file.
      File::Move( path, path2 );
      Console::WriteLine( "{0} was moved to {1}.", path, path2 );
      
      // See if the original exists now.
      if ( File::Exists( path ) )
      {
         Console::WriteLine( "The original file still exists, which is unexpected." );
      }
      else
      {
         Console::WriteLine( "The original file no longer exists, which is expected." );
      }
   }
   catch ( Exception^ e ) 
   {
      Console::WriteLine( "The process failed: {0}", e );
   }
}
using System;
using System.IO;

class Test 
{
    public static void Main() 
    {
        string path = @"c:\temp\MyTest.txt";
        string path2 = @"c:\temp2\MyTest.txt";
        try 
        {
            if (!File.Exists(path)) 
            {
                // This statement ensures that the file is created,
                // but the handle is not kept.
                using (FileStream fs = File.Create(path)) {}
            }

            // Ensure that the target does not exist.
            if (File.Exists(path2))	
            File.Delete(path2);

            // Move the file.
            File.Move(path, path2);
            Console.WriteLine("{0} was moved to {1}.", path, path2);

            // See if the original exists now.
            if (File.Exists(path)) 
            {
                Console.WriteLine("The original file still exists, which is unexpected.");
            } 
            else 
            {
                Console.WriteLine("The original file no longer exists, which is expected.");
            }			

        } 
        catch (Exception e) 
        {
            Console.WriteLine("The process failed: {0}", e.ToString());
        }
    }
}
Imports System.IO
Imports System.Text

Public Class Test
    Public Shared Sub Main()
        Dim path As String = "c:\temp\MyTest.txt"
        Dim path2 As String = "c:\temp2\MyTest.txt"

        Try
            If File.Exists(path) = False Then
                ' This statement ensures that the file is created,
                ' but the handle is not kept.
                Dim fs As FileStream = File.Create(path)
                fs.Close()
            End If

            ' Ensure that the target does not exist.
            If File.Exists(path2) Then
                File.Delete(path2)
            End If

            ' Move the file.
            File.Move(path, path2)
            Console.WriteLine("{0} moved to {1}", path, path2)

            ' See if the original file exists now.
            If File.Exists(path) Then
                Console.WriteLine("The original file still exists, which is unexpected.")
            Else
                Console.WriteLine("The original file no longer exists, which is expected.")
            End If
        Catch e As Exception
            Console.WriteLine("The process failed: {0}", e.ToString())
        End Try
    End Sub
End Class

注釈

この方法は、ディスクボリューム間で機能します。コピー元とコピー先が同じである場合、例外はスローされません。This method works across disk volumes, and it does not throw an exception if the source and destination are the same.

同じ名前のファイルをそのディレクトリに移動してファイルを置換しようとすると、 IOExceptionがスローされることに注意してください。Note that if you attempt to replace a file by moving a file of the same name into that directory, an IOException is thrown. そのためには、 Move(String, String, Boolean)代わりにを呼び出します。For that purpose, call Move(String, String, Boolean) instead.

引数sourceFileNamedestFileName引数には、相対パスまたは絶対パス情報を含めることができます。The sourceFileName and destFileName arguments can include relative or absolute path information. 相対パス情報は、現在の作業ディレクトリを基準として解釈されます。Relative path information is interpreted as relative to the current working directory. 現在の作業ディレクトリを取得するにGetCurrentDirectoryは、「」を参照してください。To obtain the current working directory, see GetCurrentDirectory.

ディスクボリューム間でファイルを移動しようとしたときに、そのファイルが使用されている場合、ファイルはコピー先にコピーされますが、ソースからは削除されません。If you try to move a file across disk volumes and that file is in use, the file is copied to the destination, but it is not deleted from the source.

共通 I/O タスクの一覧は、 共通 I/O タスク を参照してください。For a list of common I/O tasks, see Common I/O Tasks.

セキュリティ

FileIOPermission
読み取りsourceFileNamedestFileName書き込みのために使用します。for reading from sourceFileName and writing to destFileName. 関連付けられReadた列挙型:、WriteAssociated enumerations: Read, Write

こちらもご覧ください

Move(String, String, Boolean) Move(String, String, Boolean) Move(String, String, Boolean) Move(String, String, Boolean)

指定したファイルを新しい場所に移動します。新しいファイル名を指定し、既に存在する場合は、対象ファイルを上書きするオプションが用意されています。Moves a specified file to a new location, providing the options to specify a new file name and to overwrite the destination file if it already exists.

public:
 static void Move(System::String ^ sourceFileName, System::String ^ destFileName, bool overwrite);
public static void Move (string sourceFileName, string destFileName, bool overwrite);
static member Move : string * string * bool -> unit
Public Shared Sub Move (sourceFileName As String, destFileName As String, overwrite As Boolean)

パラメーター

sourceFileName
String String String String

移動するファイルの名前。The name of the file to move. 相対パスまたは絶対パスを含めることができます。Can include a relative or absolute path.

destFileName
String String String String

ファイルの新しいパスおよび名前。The new path and name for the file.

overwrite
Boolean Boolean Boolean Boolean

宛先ファイルが既に存在する場合にそれを上書きする場合は true。それ以外の場合は falsetrue to overwrite the destination file if it already exists; false otherwise.

例外

sourceFileName が見つかりませんでした。sourceFileName was not found.

sourceFileName または destFileNamenull です。sourceFileName or destFileName is null.

sourceFileNamedestFileName が長さ 0 の文字列であるか、空白のみで構成されているか、または InvalidPathCharsで定義されている正しくない文字を含んでいます。sourceFileName or destFileName is a zero-length string, contains only white space, or contains invalid characters as defined in InvalidPathChars.

呼び出し元に、必要なアクセス許可がありません。The caller does not have the required permission.

指定したパス、ファイル名、またはその両方がシステム定義の最大長を超えています。The specified path, file name, or both exceed the system-defined maximum length.

sourceFileName または destFileName で指定されたパスが正しくありません (マップされていないドライブ上のパスなど)。The path specified in sourceFileName or destFileName is invalid, (for example, it is on an unmapped drive).

sourceFileName または destFileName の形式が正しくありません。sourceFileName or destFileName is in an invalid format.

次の例では、ファイルを移動します。The following example moves a file.

using namespace System;
using namespace System::IO;

int main()
{
   String^ path = "c:\\temp\\MyTest.txt";
   String^ path2 = "c:\\temp2\\MyTest.txt";
   try
   {
      if (  !File::Exists( path ) )
      {
         
         // This statement ensures that the file is created,
         // but the handle is not kept.
         FileStream^ fs = File::Create( path );
         if ( fs )
                  delete (IDisposable^)fs;
      }
      
      // Ensure that the target does not exist.
      if ( File::Exists( path2 ) )
            File::Delete( path2 );
      
      // Move the file.
      File::Move( path, path2 );
      Console::WriteLine( "{0} was moved to {1}.", path, path2 );
      
      // See if the original exists now.
      if ( File::Exists( path ) )
      {
         Console::WriteLine( "The original file still exists, which is unexpected." );
      }
      else
      {
         Console::WriteLine( "The original file no longer exists, which is expected." );
      }
   }
   catch ( Exception^ e ) 
   {
      Console::WriteLine( "The process failed: {0}", e );
   }
}
using System;
using System.IO;

class Test 
{
    public static void Main() 
    {
        string path = @"c:\temp\MyTest.txt";
        string path2 = @"c:\temp2\MyTest.txt";
        try 
        {
            if (!File.Exists(path)) 
            {
                // This statement ensures that the file is created,
                // but the handle is not kept.
                using (FileStream fs = File.Create(path)) {}
            }

            // Ensure that the target does not exist.
            if (File.Exists(path2))	
            File.Delete(path2);

            // Move the file.
            File.Move(path, path2);
            Console.WriteLine("{0} was moved to {1}.", path, path2);

            // See if the original exists now.
            if (File.Exists(path)) 
            {
                Console.WriteLine("The original file still exists, which is unexpected.");
            } 
            else 
            {
                Console.WriteLine("The original file no longer exists, which is expected.");
            }			

        } 
        catch (Exception e) 
        {
            Console.WriteLine("The process failed: {0}", e.ToString());
        }
    }
}
Imports System.IO
Imports System.Text

Public Class Test
    Public Shared Sub Main()
        Dim path As String = "c:\temp\MyTest.txt"
        Dim path2 As String = "c:\temp2\MyTest.txt"

        Try
            If File.Exists(path) = False Then
                ' This statement ensures that the file is created,
                ' but the handle is not kept.
                Dim fs As FileStream = File.Create(path)
                fs.Close()
            End If

            ' Ensure that the target does not exist.
            If File.Exists(path2) Then
                File.Delete(path2)
            End If

            ' Move the file.
            File.Move(path, path2)
            Console.WriteLine("{0} moved to {1}", path, path2)

            ' See if the original file exists now.
            If File.Exists(path) Then
                Console.WriteLine("The original file still exists, which is unexpected.")
            Else
                Console.WriteLine("The original file no longer exists, which is expected.")
            End If
        Catch e As Exception
            Console.WriteLine("The process failed: {0}", e.ToString())
        End Try
    End Sub
End Class

注釈

この方法は、ディスクボリューム間で機能します。コピー元とコピー先が同じである場合、例外はスローされません。This method works across disk volumes, and it does not throw an exception if the source and destination are the same.

引数sourceFileNamedestFileName引数には、相対パスまたは絶対パス情報を含めることができます。The sourceFileName and destFileName arguments can include relative or absolute path information. 相対パス情報は、現在の作業ディレクトリを基準として解釈されます。Relative path information is interpreted as relative to the current working directory. 現在の作業ディレクトリを取得するにGetCurrentDirectoryは、「」を参照してください。To obtain the current working directory, see GetCurrentDirectory.

ディスクボリューム間でファイルを移動しようとしたときに、そのファイルが使用されている場合、ファイルはコピー先にコピーされますが、ソースからは削除されません。If you try to move a file across disk volumes and that file is in use, the file is copied to the destination, but it is not deleted from the source.

共通 I/O タスクの一覧は、 共通 I/O タスク を参照してください。For a list of common I/O tasks, see Common I/O Tasks.

セキュリティ

FileIOPermission
読み取りsourceFileNamedestFileName書き込みのために使用します。for reading from sourceFileName and writing to destFileName. 関連付けられReadた列挙型:、WriteAssociated enumerations: Read, Write

こちらもご覧ください

適用対象