C# と VB.NET の質問掲示板

ASP.NET、C++/CLI、Java 何でもどうぞ

C# と VB.NET の入門サイト

Re[6]: ファイルの移動に関して。


(過去ログ 73 を表示中)

[トピック内 9 記事 (1 - 9 表示)]  << 0 >>

■42528 / inTopicNo.1)  ファイルの移動に関して。
  
□投稿者/ Dot (1回)-(2009/10/17(Sat) 05:42:08)

分類:[C#] 

2009/10/17(Sat) 06:52:49 編集(投稿者)

開発環境:VC# 2008
6:44 訂正
ifでFile.Existsを使用しその中に.dotファイルが存在した場合、
その中にある1.dot以外の.dotファイルをFile.Moveで他の場所に移動したいのですが、可能ですか? 可能であれば方法も教えていただけると幸いです。
引用返信 編集キー/
■42529 / inTopicNo.2)  Re[1]: ファイルの移動に関して。
□投稿者/ επιστημη (2207回)-(2009/10/17(Sat) 06:39:56)
επιστημη さんの Web サイト
> ifでファイルを移動したいのですが

「ifでファイルを移動する」とは如何なる意味ですか?
if は条件判断に用いるもので、ファイル移動はできませんが。

引用返信 編集キー/
■42530 / inTopicNo.3)  Re[2]: ファイルの移動に関して。
□投稿者/ Dot (2回)-(2009/10/17(Sat) 06:53:50)
No42529 (επιστημη さん) に返信
>>ifでファイルを移動したいのですが
>
> 「ifでファイルを移動する」とは如何なる意味ですか?
> if は条件判断に用いるもので、ファイル移動はできませんが。

分かり難い説明をしてしまって申し訳ありません。
訂正致しました。
引用返信 編集キー/
■42532 / inTopicNo.4)  Re[3]: ファイルの移動に関して。
□投稿者/ nori (79回)-(2009/10/17(Sat) 08:31:19)
とあるフォルダ内にあるdot拡張子ファイルを別フォルダに移動したい。
但し1.dotというファイルは除外。
って事でよろしいか?

とりあえず↓を調べてみて下さい。
http://jeanne.wankuma.com/tips/csharp/directory/getfiles.html
http://jeanne.wankuma.com/tips/csharp/file/move.html

引用返信 編集キー/
■42533 / inTopicNo.5)  Re[3]: ファイルの移動に関して。
□投稿者/ ぽぴ王子 (459回)-(2009/10/17(Sat) 08:37:05)
ぽぴ王子 さんの Web サイト
No42530 (Dot さん) に返信

> 分かり難い説明をしてしまって申し訳ありません。
> 訂正致しました。

元記事を修正してしまうと、逆にεπιστημηさんの指摘がなんなのかわからなく
なってしまうので、この場合は改めて書いた方がいいかもしれませんね。

No42528 (Dot さん) に返信
> ifでFile.Existsを使用しその中に.dotファイルが存在した場合、
> その中にある1.dot以外の.dotファイルをFile.Moveで他の場所に移動したいのですが、可能ですか? 可能であれば方法も教えていただけると幸いです。

1. Directory.GetFiles メソッドを使って、*.dot ファイルの一覧を得る
2. 一覧をループし、1.dot 以外のファイルを File.Move で移動

とすればいいと思います。コードは書きません。
引用返信 編集キー/
■42534 / inTopicNo.6)  Re[3]: ファイルの移動に関して。
□投稿者/ επιστημη (2208回)-(2009/10/17(Sat) 08:39:11)
επιστημη さんの Web サイト
2009/10/17(Sat) 08:40:12 編集(投稿者)
↓たとえばこんなかんじ?

using System;
using System.IO;

namespace FileMove
{
    class Program
    {
        static void Main()
        {
            string src = @"e:\work\src";
            string dst = @"e:\work\dst";
            foreach (string item in Directory.GetFiles(src))
            {
                if ( item.EndsWith(".dot") ) {
                  if ( Path.GetFileNameWithoutExtension(item) != "1" ) {
                      string filename = Path.GetFileName(item);
                      Console.WriteLine("移動元:{0}  移動先:{1}",
                          Path.Combine(src, filename),
                          Path.Combine(dst, filename));
                  }
                }
            }
        }
    }
}

引用返信 編集キー/
■42536 / inTopicNo.7)  Re[4]: ファイルの移動に関して。
□投稿者/ Dot (3回)-(2009/10/17(Sat) 10:34:40)
No42532(nori さん) に返信

そこも参考にさせて頂いたのですが理解できず。。。

No42533 (ぽぴ王子 さん) に返信

分かりました、今度からそうさせていただきます。

> 2. 一覧をループし、1.dot 以外のファイルを File.Move で移動

ここがよく分からなくて。。。

No42534(επιστημη さん) に返信

>↓たとえばこんなかんじ?

はい!それです!

if ( Path.GetFileNameWithoutExtension(item) != "1" )
1だけでなく複数指定するにはどう書けばいいのでしょう・・・?
知識不足で申し訳ありません。
引用返信 編集キー/
■42545 / inTopicNo.8)  Re[5]: ファイルの移動に関して。
□投稿者/ επιστημη (2209回)-(2009/10/17(Sat) 14:24:47)
επιστημη さんの Web サイト
2009/10/17(Sat) 14:25:01 編集(投稿者)
> if ( Path.GetFileNameWithoutExtension(item) != "1" )
> 1だけでなく複数指定するにはどう書けばいいのでしょう・・・?

using System;
using System.IO;
using System.Linq;

namespace FileMove
{
    class Program
    {
        static void Main()
        {
            string src = @"e:\work\src";
            string dst = @"e:\work\dst";
            foreach (string item in Directory.GetFiles(src))
            {
                if (item.EndsWith(".dot"))
                {
                    if ( !(new string[] { "1", "2" }).Contains(Path.GetFileNameWithoutExtension(item)))
                    {
                        string filename = Path.GetFileName(item);
                        Console.WriteLine("移動元:{0}  移動先:{1}",
                            Path.Combine(src, filename),
                            Path.Combine(dst, filename));
                    }
                }
            }
        }
    }
}

※ あくまで一例。鵜呑みにするべからず。理解できないコードを使うべからず。

引用返信 編集キー/
■42551 / inTopicNo.9)  Re[6]: ファイルの移動に関して。
□投稿者/ Dot (4回)-(2009/10/17(Sat) 19:58:22)
No42545 (επιστημη さん) に返信
(中略)
> ※ あくまで一例。鵜呑みにするべからず。理解できないコードを使うべからず。

ありがとうございます。
確かに分からない部分も少々あるのでそこは調べて頑張ってみます。
本当にありがとうございました!
解決済み
引用返信 編集キー/


トピック内ページ移動 / << 0 >>

このトピックに書きこむ

過去ログには書き込み不可

管理者用

- Child Tree -