基本的にはSDKのサンプルコードです。
何となくプログラミングの感じがわかるでしょうか。
001 using System;
002 using System.Storage;
003 using System.Storage.Documents;
004 using System.Collections.Generic;
005 using System.Text;
006
007
008 namespace WinFSTestApplication
009 {
010 /// <summary>
011 /// WinFsDataオブジェクトを使ってWinFSストレージ内のアイテムを検索する。
012 /// </summary>
013 class Program
014 {
015 static void Main(string[] args) {
016 //WinFsDataオブジェクトの作成
017 WinFSData fs = new WinFSData(@"\\localhost\DefaultStore\Users");
018 using (fs) {
019 //Storage無いのすべてのItemを検索する
020 foreach (Item itemAll in fs.Items) {
021 //アイテムが持つ個別IDとサイズを表示する。
022 Console.WriteLine("Item ID : {0} Item Size : {1}", itemAll.ItemId, itemAll.ItemSize);
023 }
024 //Folder型のItemだけ選択するようフィルタをかける。
025 foreach (Folder f in fs.Items.FilterByType<Folder>()) {
026 Console.WriteLine("Folder : {0}", f.NamespaceName);
027 //フォルダ内のアイテムのタイプと表示名称の一覧を表示する。
028 //特定の仮想フォルダの内容を取得するにはその仮想フォルダ名で
029 //新たにWinFsDataオブジェクトを作成する。
030 foreach (Item folderItem in new WinFSData(f.GetAbsolutePath()).Items) {
031 //アイテムの形と表示名を表示する
032 Console.WriteLine("{0} : {1}", folderItem.GetType(), folderItem.DisplayName);
033 }
034 }
035 //いわゆるファイル名による曖昧検索
036 foreach (Item itemNameSpace in fs.Items.FilterByType<GenericFile>().Filter("NameSpaceName like '%sln%'")) {
037 //アイテムのパスと方を表示する。
038 Console.WriteLine("Path : {0}, Type : {1}", itemNameSpace.GetPath(), itemNameSpace.GetType());
039 }
040 }
041
042 }
043 }
044 }
コメント