(57)【要約】【課題】ＰＣ２０からカードリーダ１０のメモリカード１８に格納されているファイルへ確実にアクセスさせることができるファイル転送システム１を提供する。【解決手段】カードリーダ１０は、ＰＣ２０からインデックスファイルの転送命令を受信すると、メモリカード１８の所定のディレクトリに存在するファイル及びサブディレクトリを検出して、各々の名称とパスとを取得する（Ｓ５０５）。そして、各々のファイル及びサブディレクトリの名称に、対応するファイル及びサブディレクトリへの直接又は間接的なリンクを設定したインデックスファイルを生成する（Ｓ５１１）。これにより、インデックスファイルには、メモリカード１８の所定のディレクトリに存在する最新のファイル及びサブディレクトリが反映されるので、ＰＣ２０からメモリカード１８に格納されているファイルへ確実にアクセスさせることができる。【選択図】  図５
2009037361.tif 000002
【特許請求の範囲】
【請求項１】
ハイパーテキスト形式のファイルを表示し、そのハイパーテキスト形式のファイルに埋め込まれた、別のファイルの所在位置を示すパスを用いてその別のファイルの転送命令を送信し、その転送命令に応じて返信されるファイルを受信可能なブラウザを備えたクライアント装置と、ネットワークを介して通信可能なサーバ装置であって、
複数の階層を有するディレクトリ構造に従ってファイルを格納するファイル格納手段と、
そのファイル格納手段に格納されているファイルの転送命令を前記ブラウザより受信する受信手段と、
その受信手段で受信した転送命令により指定されたファイルを前記ファイル格納手段から取得するファイル取得手段と、
前記ファイル格納手段の所定のディレクトリに存在するファイル及びサブディレクトリを検出して、その所定のディレクトリに存在するファイル及びサブディレクトリの一覧であり且つファイル及びサブディレクトリを識別する各々の識別情報に各々対応するファイル及びサブディレクトリのパスが直接又は間接的に関連付けられて埋め込まれたハイパーテキスト形式のインデックスファイルを生成するインデックスファイル生成手段と、
前記受信手段で受信したファイルの転送命令が前記インデックスファイルの転送命令である場合は前記インデックスファイル生成手段で生成したインデックスファイルを前記ブラウザに送信し、前記インデックスファイルに埋め込まれたパスによって指定されたファイルの転送命令である場合は前記ファイル取得手段で取得したファイルを前記ブラウザに送信するファイル送信手段とを備えていることを特徴とするサーバ装置。
【請求項２】
前記インデックスファイル生成手段は、前記受信手段により所定のディレクトリのインデックスファイルの転送命令を受信した場合に、その所定のディレクトリについてインデックスファイルを生成することを特徴とする請求項１に記載のサーバ装置。
【請求項３】
前記インデックスファイル生成手段は、前記ファイル格納手段の所定のディレクトリにファイル若しくはサブディレクトリが新規作成された場合、又は、その所定のディレクトリからファイル若しくはサブディレクトリが削除された場合に、その所定のディレクトリについてインデックスファイルを生成することを特徴とする請求項１に記載のサーバ装置。
【請求項４】
前記インデックスファイル生成手段は、前記所定のディレクトリに存在するサブディレクトリの各々の識別情報に対し、そのサブディレクトリに存在するファイル及びサブディレクトリの一覧であり且つそのファイル及びサブディレクトリを識別する各々の識別情報に各々対応するファイル及びサブディレクトリのパスが直接又は間接的に関連付けられて埋め込まれた各々のハイパーテキスト形式のインデックスファイルのパスが、直接又は間接的に関連付けられて埋め込まれたインデックスファイルを生成することを特徴とする請求項１から３のいずれかに記載のサーバ装置。
【請求項５】
前記所定のディレクトリに存在するファイル及びサブディレクトリの各々について、前記ブラウザから一度アクセスされたファイルを記憶するキャッシュを使わずに対応するファイル若しくはサブディレクトリへ直接アクセスすることを前記ブラウザに指示する指示情報と、その対応するファイル若しくはサブディレクトリのパスとを記述したハイパーテキスト形式のダミーファイルを生成するダミーファイル生成手段と、
前記ダミーファイル生成手段で生成されたダミーファイルを格納するダミーファイル格納手段とを備え、
前記インデックスファイル生成手段は、各々のファイル及びサブディレクトリの識別情報に各々対応する前記ダミーファイル格納手段に格納されたダミーファイルのパスが関連付けられて埋め込まれたインデックスファイルを生成し、
前記ファイル送信手段は、前記受信手段で受信したファイルの転送命令が前記ダミーファイルの転送命令である場合は前記ダミーファイル格納手段に格納されたダミーファイルを前記ブラウザに送信することを特徴とする請求項１から４のいずれかに記載のサーバ装置。
【請求項６】
前記クライアント装置との間のデータ転送プロトコルはハイパーテキスト転送プロトコルであり、
前記ファイル送信手段は、前記ブラウザから前記インデックスファイルに埋め込まれたパスを用いて指定されたファイルを前記ブラウザに送信する場合に、前記クライアント装置のブラウザに対し、そのブラウザから一度アクセスされたファイルを記憶するキャッシュにその送信するファイルを記憶しないことを指示するヘッダ情報を、そのファイルに先駆けて送信することを特徴とする請求項１から４のいずれかに記載のサーバ装置。
【請求項７】
少なくとも前記インデックスファイル生成手段が前記インデックスファイルを生成する毎に内容が変化する付帯情報を生成する付帯情報生成手段と、
前記所定のディレクトリに存在する各々のファイル及びサブディレクトリのパスの一部に、その付帯情報生成手段で生成した付帯情報を各々付加する付加手段とを備え、
前記インデックスファイル生成手段は、前記ファイル及びサブディレクトリの各々の識別情報にその付加手段で付帯情報が付加された各々のパスが関連付けられて埋め込まれたインデックスファイルを生成し、
前記受信手段は、前記転送命令で指定されたファイルのパスに前記付帯情報が付加されている場合に、その指定されたファイルのパスから前記付帯情報を削除したパスをその指定されたファイルの正しいパスとして認識することを特徴とする請求項１から４のいずれかに記載のサーバ装置。
【請求項８】
前記インデックスファイル生成手段は、前記所定のディレクトリとその所定のディレクトリに含まれる所定階層までのサブディレクトリについて、各々のディレクトリ及びサブディレクトリに存在するファイル及びサブディレクトリを検出し、その検出したファイルとサブディレクトリを識別する各々の識別情報に各々対応するファイル及びサブディレクトリのパスが直接又は間接的に関連付けられて埋め込まれたインデックスファイルを生成することを特徴とする請求項１から７のいずれかに記載のサーバ装置。
【請求項９】
前記ファイル格納手段に画像、文書、若しくは図面ファイルが格納されている場合に、それらのファイルの画像若しくはページを縮小したサムネイルを各々生成するサムネイル生成手段を備え、
前記インデックスファイル生成手段は、ファイルが画像、文書、若しくは図面ファイルである場合に、そのファイルの識別情報として前記サムネイル生成手段によって生成されたサムネイルを用いて前記インデックスファイルを生成することを特徴とする請求項１から８のいずれかに記載のサーバ装置。
【請求項１０】
前記所定のディレクトリに存在する各々のサブディレクトリについて、各々のサブディレクトリのサイズ若しくはそのサブディレクトリに含まれるファイル及びサブディレクトリの数を取得するサブディレクトリ情報取得手段を備え、
前記インデックスファイル生成手段は、前記サブディレクトリ情報取得手段で取得した各々のサブディレクトリのサイズ若しくはそのサブディレクトリに含まれるファイル及びサブディレクトリの数が、各々のサブディレクトリの識別情報毎に設けられたサブディレクトリ情報領域に表示されるように記述されたインデックスファイルを生成することを特徴とする請求項１から９のいずれかに記載のサーバ装置。
【請求項１１】
ハイパーテキスト形式のファイルを表示し、そのハイパーテキスト形式のファイルに埋め込まれた別のファイルの所在位置を示すパスを用いてその別のファイルの転送命令を送信し、その転送命令に応じて返信されるファイルを受信可能なブラウザを備えたクライアント装置とネットワークを介して通信可能であり、複数の階層を有するディレクトリ構造に従ってファイルを格納するファイル格納手段を備えたサーバ装置によって実行されるサーバ装置制御プログラムであって、そのサーバ装置によって、
前記ファイル格納手段に格納されているファイルの転送命令を前記ブラウザより受信する受信ステップと、
その受信ステップで受信した転送命令により指定されたファイルを前記ファイル格納手段から取得するファイル取得ステップと、
前記ファイル格納手段の所定のディレクトリに存在するファイル及びサブディレクトリを検出して、その所定のディレクトリに存在するファイル及びサブディレクトリの一覧であり且つファイル及びサブディレクトリを識別する各々の識別情報に各々対応するファイル及びサブディレクトリのパスが直接又は間接的に関連付けられて埋め込まれたハイパーテキスト形式のインデックスファイルを生成するインデックスファイル生成ステップと、
前記受信ステップで受信したファイルの転送命令が前記インデックスファイルの転送命令である場合は前記インデックスファイル生成ステップで生成したインデックスファイルを前記ブラウザに送信し、前記インデックスファイルに埋め込まれたパスによって指定されたファイルの転送命令である場合は前記ファイル取得ステップで取得したファイルを前記ブラウザに送信するファイル送信ステップとが実行されることを特徴とするサーバ装置制御プログラム。
【請求項１２】
クライアント装置と、複数の階層を有するディレクトリ構造に従ってファイルを格納するファイル格納手段を有し、そのファイル格納手段に格納されたファイルをネットワークを介して前記クライアント装置に転送可能なサーバ装置とを備えたファイル転送システムであって、
前記クライアント装置は、
ハイパーテキスト形式のファイルを表示し、そのハイパーテキスト形式のファイルに埋め込まれた他のファイルの所在位置を示すパスを用いてそのファイルにアクセス可能なブラウザと、
そのブラウザでアクセスが指示されたファイルの転送命令を前記サーバに対して行う第１の転送命令手段と、
前記ファイル格納手段の所定のディレクトリに存在するファイル及びサブディレクトリの一覧であり且つファイル及びサブディレクトリを識別する各々の識別情報に各々対応するファイル及びサブディレクトリのパスが直接又は間接的に関連付けられて埋め込まれたハイパーテキスト形式のインデックスファイルの転送命令を前記サーバに対して行う第２の転送命令手段とを備え、
前記サーバ装置は、
前記第１の転送命令手段及び前記第２の転送命令手段からの転送命令を受信する受信手段と、
その受信手段で受信した転送命令により指定されたファイルを前記ファイル格納手段から取得するファイル取得手段と、
前記ファイル格納手段の所定のディレクトリに存在するファイル及びサブディレクトリを検出して、その所定のディレクトリに存在するファイル及びサブディレクトリを識別する各々の識別情報に各々対応するファイル及びサブディレクトリのパスが直接又は間接的に関連付けられて埋め込まれたハイパーテキスト形式のインデックスファイルを生成するインデックスファイル生成手段と、
前記受信手段で受信したファイルの転送命令が前記インデックスファイルの転送命令である場合は前記インデックスファイル生成手段で生成したインデックスファイルを前記ブラウザに送信し、前記インデックスファイルに埋め込まれたパスによって指定されたファイルの転送命令である場合は前記ファイル取得手段で取得したファイルを前記ブラウザに送信するファイル送信手段とを備えていることを特徴とするファイル転送システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、サーバ装置、サーバ装置制御プログラム、及びファイル転送システムに関するものである。
【背景技術】
【０００２】
従来、ネットワークを介してデータ転送を行う通信プロトコルとして、ファイル転送プロトコル（ＦＴＰ：Ｆｉｌｅ  Ｔｒａｎｓｆｅｒ  Ｐｒｏｔｏｃｏｌ）やハイパーテキスト転送プロトコル（ＨＴＴＰ：Ｈｙｐｅｒｔｅｘｔ  Ｔｒａｎｓｆｅｒ  Ｐｒｏｔｏｃｏｌ）が知られており、このＦＴＰやＨＴＴＰに従ってデータの送受信を行うシステムが数多く見受けられる。
【０００３】
例えば、次の特許文献１には、ＷＷＷ（Ｗｏｒｌｄ  Ｗｉｄｅ  Ｗｅｂ）サーバに格納されたファイルをユーザ端末に転送し、ユーザ端末のＷＷＷブラウザでそのファイルを表示するシステムが開示されている。この特許文献１に記載のシステムでは、ＷＷＷサーバに格納されたファイルにアクセスするためのリンクが予めユーザ端末のＷＷＷブラウザ上に提示され、ユーザがそのＷＷＷブラウザ上に提示されたファイルのリンクを選択することにより、そのリンクに対応するファイルがＷＷＷサーバからユーザ端末に転送されるようになっている。
【特許文献１】特開２００７−８５０７４号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
しかしながら、この特許文献１に記載のシステムでは、ＷＷＷサーバに格納されているファイルが削除されたり、新たなファイルが保存されたりしても、ＷＷＷブラウザに提示されるファイルのリンクは更新されない。そのため、ＷＷＷブラウザに提示されたファイルのリンクを選択してもそのファイルが存在しなかったり、ＷＷＷサーバに格納されているはずのファイルのリンクがＷＷＷブラウザに提示されなかったりする等の不具合が生じ、ＷＷＷサーバに格納されているファイルに対して、確実にアクセスすることができないという問題点があった。
【０００５】
本発明は上述した問題点を解決するためになされたものであり、クライアント装置からサーバ装置に格納されているファイルへ確実にアクセスさせることができるサーバ装置、サーバ装置制御プログラム、及びファイル転送システムを提供することを目的とする。
【課題を解決するための手段】
【０００６】
この目的を達成するために、請求項１に記載のサーバ装置は、ハイパーテキスト形式のファイルを表示し、そのハイパーテキスト形式のファイルに埋め込まれた、別のファイルの所在位置を示すパスを用いてその別のファイルの転送命令を送信し、その転送命令に応じて返信されるファイルを受信可能なブラウザを備えたクライアント装置と、ネットワークを介して通信可能なものであって、複数の階層を有するディレクトリ構造に従ってファイルを格納するファイル格納手段と、そのファイル格納手段に格納されているファイルの転送命令を前記ブラウザより受信する受信手段と、その受信手段で受信した転送命令により指定されたファイルを前記ファイル格納手段から取得するファイル取得手段と、前記ファイル格納手段の所定のディレクトリに存在するファイル及びサブディレクトリを検出して、その所定のディレクトリに存在するファイル及びサブディレクトリの一覧であり且つファイル及びサブディレクトリを識別する各々の識別情報に各々対応するファイル及びサブディレクトリのパスが直接又は間接的に関連付けられて埋め込まれたハイパーテキスト形式のインデックスファイルを生成するインデックスファイル生成手段と、前記受信手段で受信したファイルの転送命令が前記インデックスファイルの転送命令である場合は前記インデックスファイル生成手段で生成したインデックスファイルを前記ブラウザに送信し、前記インデックスファイルに埋め込まれたパスによって指定されたファイルの転送命令である場合は前記ファイル取得手段で取得したファイルを前記ブラウザに送信するファイル送信手段とを備えている。
【０００７】
ここで、「ハイパーテキスト形式のファイル」とは、テキスト中に別のファイルの所在位置を示すパスが埋め込まれたファイルのことである。また、「ディレクトリ」とは、ファイル格納手段においてファイルを分類し、整理するための保管場所を示すものであり、オペレーティングシステム（ＯＳ：Ｏｐｅｒｅｔｉｎｇ  Ｓｙｓｔｅｍ）によっては「フォルダ」とも呼ばれる。また、「サブディレクトリ」とはディレクトリの中に設けられたディレクトリのことであり、「ディレクトリ」と同様にＯＳによっては「サブフォルダ」とも呼ばれる。
【０００８】
請求項２に記載のサーバ装置は、請求項１に記載のサーバ装置において、前記インデックスファイル生成手段は、前記受信手段により所定のディレクトリのインデックスファイルの転送命令を受信した場合に、その所定のディレクトリについてインデックスファイルを生成する。
【０００９】
請求項３に記載のサーバ装置は、請求項１に記載のサーバ装置において、前記インデックスファイル生成手段は、前記ファイル格納手段の所定のディレクトリにファイル若しくはサブディレクトリが新規作成された場合、又は、その所定のディレクトリからファイル若しくはサブディレクトリが削除された場合に、その所定のディレクトリについてインデックスファイルを生成する。
【００１０】
請求項４に記載のサーバ装置は、請求項１から３のいずれかに記載のサーバ装置において、前記インデックスファイル生成手段は、前記所定のディレクトリに存在するサブディレクトリの各々の識別情報に対し、そのサブディレクトリに存在するファイル及びサブディレクトリの一覧であり且つそのファイル及びサブディレクトリを識別する各々の識別情報に各々対応するファイル及びサブディレクトリのパスが直接又は間接的に関連付けられて埋め込まれた各々のハイパーテキスト形式のインデックスファイルのパスが、直接又は間接的に関連付けられて埋め込まれたインデックスファイルを生成する。
【００１１】
請求項５に記載のサーバ装置は、請求項１から４のいずれかに記載のサーバ装置において、前記所定のディレクトリに存在するファイル及びサブディレクトリの各々について、前記ブラウザから一度アクセスされたファイルを記憶するキャッシュを使わずに対応するファイル若しくはサブディレクトリへ直接アクセスすることを前記ブラウザに指示する指示情報と、その対応するファイル若しくはサブディレクトリのパスとを記述したハイパーテキスト形式のダミーファイルを生成するダミーファイル生成手段と、前記ダミーファイル生成手段で生成されたダミーファイルを格納するダミーファイル格納手段とを備え、前記インデックスファイル生成手段は、各々のファイル及びサブディレクトリの識別情報に各々対応する前記ダミーファイル格納手段に格納されたダミーファイルのパスが関連付けられて埋め込まれたインデックスファイルを生成し、前記ファイル送信手段は、前記受信手段で受信したファイルの転送命令が前記ダミーファイルの転送命令である場合は前記ダミーファイル格納手段に格納されたダミーファイルを前記ブラウザに送信する。
【００１２】
請求項６に記載のサーバ装置は、請求項１から４のいずれかに記載のサーバ装置において、前記クライアント装置との間のデータ転送プロトコルはハイパーテキスト転送プロトコルであり、前記ファイル送信手段は、前記ブラウザから前記インデックスファイルに埋め込まれたパスを用いて指定されたファイルを前記ブラウザに送信する場合に、前記クライアント装置のブラウザに対し、そのブラウザから一度アクセスされたファイルを記憶するキャッシュにその送信するファイルを記憶しないことを指示するヘッダ情報を、そのファイルに先駆けて送信する。
【００１３】
請求項７に記載のサーバ装置は、請求項１から４のいずれかに記載のサーバ装置において、少なくとも前記インデックスファイル生成手段が前記インデックスファイルを生成する毎に内容が変化する付帯情報を生成する付帯情報生成手段と、前記所定のディレクトリに存在する各々のファイル及びサブディレクトリのパスの一部に、その付帯情報生成手段で生成した付帯情報を各々付加する付加手段とを備え、前記インデックスファイル生成手段は、前記ファイル及びサブディレクトリの各々の識別情報にその付加手段で付帯情報が付加された各々のパスが関連付けられて埋め込まれたインデックスファイルを生成し、前記受信手段は、前記転送命令で指定されたファイルのパスに前記付帯情報が付加されている場合に、その指定されたファイルのパスから前記付帯情報を削除したパスをその指定されたファイルの正しいパスとして認識する。
【００１４】
請求項８に記載のサーバ装置は、請求項１から７のいずれかに記載のサーバ装置において、前記インデックスファイル生成手段は、前記所定のディレクトリとその所定のディレクトリに含まれる所定階層までのサブディレクトリについて、各々のディレクトリ及びサブディレクトリに存在するファイル及びサブディレクトリを検出し、その検出したファイルとサブディレクトリを識別する各々の識別情報に各々対応するファイル及びサブディレクトリのパスが直接又は間接的に関連付けられて埋め込まれたインデックスファイルを生成する。
【００１５】
請求項９に記載のサーバ装置は、請求項１から８のいずれかに記載のサーバ装置において、前記ファイル格納手段に画像、文書、若しくは図面ファイルが格納されている場合に、それらのファイルの画像若しくはページを縮小したサムネイルを各々生成するサムネイル生成手段を備え、前記インデックスファイル生成手段は、ファイルが画像、文書、若しくは図面ファイルである場合に、そのファイルの識別情報として前記サムネイル生成手段によって生成されたサムネイルを用いて前記インデックスファイルを生成する。
【００１６】
請求項１０に記載のサーバ装置は、請求項１から９のいずれかに記載のサーバ装置において、前記所定のディレクトリに存在する各々のサブディレクトリについて、各々のサブディレクトリのサイズ若しくはそのサブディレクトリに含まれるファイル及びサブディレクトリの数を取得するサブディレクトリ情報取得手段を備え、前記インデックスファイル生成手段は、前記サブディレクトリ情報取得手段で取得した各々のサブディレクトリのサイズ若しくはそのサブディレクトリに含まれるファイル及びサブディレクトリの数が、各々のサブディレクトリの識別情報毎に設けられたサブディレクトリ情報領域に表示されるように記述されたインデックスファイルを生成する。
【００１７】
請求項１１に記載のサーバ装置制御プログラムは、ハイパーテキスト形式のファイルを表示し、そのハイパーテキスト形式のファイルに埋め込まれた別のファイルの所在位置を示すパスを用いてその別のファイルの転送命令を送信し、その転送命令に応じて返信されるファイルを受信可能なブラウザを備えたクライアント装置とネットワークを介して通信可能であり、複数の階層を有するディレクトリ構造に従ってファイルを格納するファイル格納手段を備えたサーバ装置によって実行されるものであって、そのサーバ装置によって、前記ファイル格納手段に格納されているファイルの転送命令を前記ブラウザより受信する受信ステップと、その受信ステップで受信した転送命令により指定されたファイルを前記ファイル格納手段から取得するファイル取得ステップと、前記ファイル格納手段の所定のディレクトリに存在するファイル及びサブディレクトリを検出して、その所定のディレクトリに存在するファイル及びサブディレクトリの一覧であり且つファイル及びサブディレクトリを識別する各々の識別情報に各々対応するファイル及びサブディレクトリのパスが直接又は間接的に関連付けられて埋め込まれたハイパーテキスト形式のインデックスファイルを生成するインデックスファイル生成ステップと、前記受信ステップで受信したファイルの転送命令が前記インデックスファイルの転送命令である場合は前記インデックスファイル生成ステップで生成したインデックスファイルを前記ブラウザに送信し、前記インデックスファイルに埋め込まれたパスによって指定されたファイルの転送命令である場合は前記ファイル取得ステップで取得したファイルを前記ブラウザに送信するファイル送信ステップとが実行される。
【００１８】
請求項１２に記載のファイル転送システムは、クライアント装置と、複数の階層を有するディレクトリ構造に従ってファイルを格納するファイル格納手段を有し、そのファイル格納手段に格納されたファイルをネットワークを介して前記クライアント装置に転送可能なサーバ装置とを備えたものであって、前記クライアント装置は、ハイパーテキスト形式のファイルを表示し、そのハイパーテキスト形式のファイルに埋め込まれた他のファイルの所在位置を示すパスを用いてそのファイルにアクセス可能なブラウザと、そのブラウザでアクセスが指示されたファイルの転送命令を前記サーバに対して行う第１の転送命令手段と、前記ファイル格納手段の所定のディレクトリに存在するファイル及びサブディレクトリの一覧であり且つファイル及びサブディレクトリを識別する各々の識別情報に各々対応するファイル及びサブディレクトリのパスが直接又は間接的に関連付けられて埋め込まれたハイパーテキスト形式のインデックスファイルの転送命令を前記サーバに対して行う第２の転送命令手段とを備え、前記サーバ装置は、前記第１の転送命令手段及び前記第２の転送命令手段からの転送命令を受信する受信手段と、その受信手段で受信した転送命令により指定されたファイルを前記ファイル格納手段から取得するファイル取得手段と、前記ファイル格納手段の所定のディレクトリに存在するファイル及びサブディレクトリを検出して、その所定のディレクトリに存在するファイル及びサブディレクトリを識別する各々の識別情報に各々対応するファイル及びサブディレクトリのパスが直接又は間接的に関連付けられて埋め込まれたハイパーテキスト形式のインデックスファイルを生成するインデックスファイル生成手段と、前記受信手段で受信したファイルの転送命令が前記インデックスファイルの転送命令である場合は前記インデックスファイル生成手段で生成したインデックスファイルを前記ブラウザに送信し、前記インデックスファイルに埋め込まれたパスによって指定されたファイルの転送命令である場合は前記ファイル取得手段で取得したファイルを前記ブラウザに送信するファイル送信手段とを備えている。
【発明の効果】
【００１９】
請求項１に記載のサーバ装置によれば、インデックスファイル生成手段によって、所定のディレクトリに存在するファイル及びサブディレクトリが検出されてからインデックスファイルが生成されるので、そのインデックスファイルにより、所定のディレクトリに存在するファイル及びサブディレクトリを正確にブラウザに表示させることができる。よって、そのインデックスファイルに埋め込まれたパスを用いて、ブラウザから所望のファイルにアクセスさせることができる。従って、クライアント装置からサーバ装置に格納されているファイルへ確実にアクセスさせることができるという効果がある。
【００２０】
また、従来の技術では、所定のディレクトリに存在するファイル及びサブディレクトリが正確に表示されなかったため、その所定のディレクトリに存在するファイル及びサブディレクトリの内容を確認するためには、それらを１つずつ読み出して、その内容を表示させなければならなかった。これに対し、請求項１に記載のサーバ装置によれば、インデックスファイルにより所定のディレクトリに存在するファイル及びサブディレクトリを正確にブラウザに表示させることができるので、クライアント装置のユーザは、その所定のディレクトリに存在するファイル及びサブディレクトリの内容をインデックスファイルに記載された各々の識別情報によって推定することができる。よって、ユーザに対して効率的に所望のファイルやサブディレクトリを確認させることができるという効果がある。
【００２１】
更に、サーバ装置でハイパーテキスト形式のインデックスファイルが生成されてブラウザに送信されるので、クライアント装置がハイパーテキスト形式のファイルに対応したブラウザを備えていればその生成されたインデックスファイルを表示させることができる。よって、異なるブラウザであっても同じ使用感でファイルへのアクセスを行わせることができるという効果がある。
【００２２】
請求項２に記載のサーバ装置によれば、請求項１に記載のサーバ装置の奏する効果に加えて、インデックスファイルの転送命令が受信されたときに所定のディレクトリに存在するファイル及びサブディレクトリがインデックスファイルに反映される。よって、クライアント装置のブラウザに対し、サーバ装置に格納されているファイル及びサブディレクトリの最新の情報を表示させることができるという効果がある。
【００２３】
請求項３に記載のサーバ装置によれば、請求項１に記載のサーバ装置の奏する効果に加えて、インデックスファイルの転送命令が受信されたときに所定のディレクトリに存在するファイル及びサブディレクトリが反映されたインデックスファイルが既に生成されている。よって、クライアント装置のブラウザに対し、サーバ装置に格納されているファイル及びサブディレクトリの最新の情報を表示させることができるという効果がある。
【００２４】
請求項４に記載のサーバ装置によれば、請求項１から３のいずれかに記載のサーバ装置の奏する効果に加えて、クライアント装置のブラウザに表示されたインデックスファイルからサブディレクトリが選択された場合、ブラウザにそのサブディレクトリのインデックスファイルを表示させることができる。よって、クライアント装置に対し、下層のサブディレクトリに格納されているファイルへのアクセスを容易に行わせることができるという効果がある。
【００２５】
請求項５に記載のサーバ装置によれば、請求項１から４のいずれかに記載のサーバ装置の奏する効果に加えて、クライアント装置のブラウザに表示されたインデックスファイルからユーザにより所望のファイル若しくはサブディレクトリが選択された場合、そのファイル若しくはサブディレクトリについて過去のデータがキャッシュに記憶されていても、対応するダミーファイルにより、クライアント装置に対しサーバ装置の最新のファイル若しくはサブディレクトリへアクセスさせることができるという効果がある。
【００２６】
請求項６に記載のサーバ装置によれば、請求項１から４のいずれかに記載のサーバ装置の奏する効果に加えて、ブラウザからファイル格納手段に格納されたファイルに繰り返しアクセスが行われる場合でも、そのファイルがキャッシュに記憶されないので、クライアント装置はファイル格納手段に格納されたファイルへ常に直接アクセスする。よって、クライアント装置からサーバ装置の最新のファイルへアクセスさせることができるという効果がある。
【００２７】
請求項７に記載のサーバ装置によれば、請求項１から４のいずれかに記載のサーバ装置の奏する効果に加えて、異なるタイミングで生成されたインデックスファイルにより、同一のファイルやサブディレクトリがブラウザから選択されても、ブラウザには異なるファイル若しくはサブディレクトリとして認識させることができる。よって、ブラウザに対し、キャッシュのデータを参照させないようにすることができる。
【００２８】
一方、ブラウザからの転送命令で指定されたファイルのパスに付帯情報が付加されている場合には、正しいパスによって指定されたファイルがクライアント装置に送信される。よって、ユーザの所望のファイルを正しくクライアント装置へ送信することができるので、クライアント装置から最新のファイルへ確実にアクセスさせることができるという効果がある。
【００２９】
請求項８に記載のサーバ装置によれば、請求項１から７のいずれかに記載のサーバ装置の奏する効果に加えて、所定のディレクトリとそのディレクトリに含まれる所定階層までのサブディレクトリに存在するファイル及びサブディレクトリの一覧を、１つのインデックスファイルで確認することができる。よって、クライアント装置のユーザに対し、サーバ装置の下層のサブディレクトリに格納されている所望のファイルを少ない操作で発見させ、そのファイルへのアクセスを容易に行わせることができるという効果がある。
【００３０】
請求項９に記載のサーバ装置によれば、請求項１から８のいずれかに記載のサーバ装置の奏する効果に加えて、クライアント装置に対し、サーバ装置のファイル格納手段に格納されているファイルの内容をサムネイルによって容易に確認させることができるという効果がある。
【００３１】
請求項１０に記載のサーバ装置によれば、サブディレクトリ情報領域に表示されたサブディレクトリのサイズ若しくはそのサブディレクトリに含まれるファイル及びサブディレクトリの数によって、各サブディレクトリに含まれるファイルの内容を推測させることができる。よって、クライアント装置に対し、サブディレクトリに所望のファイルが存在するか否かの判断を容易に行わせることができるという効果がある。
【００３２】
請求項１１に記載のサーバ装置制御プログラムによれば、サーバ装置によって実行されることにより、クライアント装置からサーバ装置に格納されているファイルへ確実にアクセスさせることができるという効果がある。また、所定のディレクトリに存在するファイル及びサブディレクトリの内容をインデックスファイルに記載された各々の識別情報によって推定することができるので、ユーザに対して効率的に所望のファイルやサブディレクトリを確認させることができるという効果がある。更に、サーバ装置でハイパーテキスト形式のインデックスファイルが生成されてブラウザに送信されるので、異なるブラウザであっても同じ使用感でファイルへのアクセスを行わせることができるという効果がある。
【００３３】
請求項１２に記載のファイル転送システムによれば、クライアント装置からサーバ装置に格納されているファイルへ確実にアクセスさせることができるという効果がある。また、所定のディレクトリに存在するファイル及びサブディレクトリの内容をインデックスファイルに記載された各々の識別情報によって推定することができるので、ユーザに対して効率的に所望のファイルやサブディレクトリを確認させることができるという効果がある。更に、サーバ装置でハイパーテキスト形式のインデックスファイルが生成されてブラウザに送信されるので、異なるブラウザであっても同じ使用感でファイルへのアクセスを行わせることができるという効果がある。
【発明を実施するための最良の形態】
【００３４】
以下、本発明の好ましい実施形態について、添付図面を参照して説明する。図１は、本発明の第１実施形態におけるファイル転送システム１の電気的構成を示すブロック図である。
【００３５】
このファイル転送システム１は、サーバ装置として機能するカードリーダ１０とクライアント装置として機能するパーソナルコンピュータ（ＰＣ：Ｐｅｒｓｏｎａｌ  Ｃｏｍｐｕｔｅｒ）２０とから構成されており、カードリーダ１０とＰＣ２０とはＬＡＮ（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）４０を介して接続されている。このファイル転送システム１は、ＰＣ２０から、カードリーダ１０に装着されたメモリカード１８に格納されているファイルへ確実にアクセスさせることができるシステムである。
【００３６】
このファイル転送システム１では、カードリーダ１０が、メモリカード１８にある所定のディレクトリのインデックスファイルを生成し、ＰＣ２０に対して提供する。この「所定のディレクトリのインデックスファイル」とは、所定のディレクトリに存在するファイル及びサブディレクトリが一覧になった、ハイパーテキスト形式のファイルである。そして、各ファイル及びサブディレクトリの名称に、各々のファイル及びサブディレクトリの実体へのリンクが設定されている。この所定のディレクトリのインデックスファイルは、ＰＣ２０がカードリーダ１０に対して所定のディレクトリのインデックスファイルの転送命令を指示する毎に、カードリーダ１０によって生成される。
【００３７】
カードリーダ１０は、メモリカード１８に格納されたファイルを読み出すことが可能なサーバ装置である。カードリーダ１０には、メモリカード１８を着脱自在に装着可能なカードスロット（図示せず）が設けられており、そのカードスロットにメモリカード１８を装着することにより、カードリーダ１０はメモリカード１８とアクセスできるようになっている。また、カードリーダ１０は、ＰＣ２０との間でファイル転送プロトコル（ＦＴＰ：Ｆｉｌｅ  Ｔｒａｎｓｆｅｒ  Ｐｒｏｔｏｃｏｌ）に従った通信を行い、ＬＡＮ４０を介してメモリカード１８に格納されたファイルをＰＣ２０へ転送する。
【００３８】
このカードリーダ１０は、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）１１、ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）１２、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）１３、ＬＡＮインターフェイス１４、メモリカードインターフェイス１５、及び計時回路１６を備えており、これらはバスライン１７を介して互いに接続されている。また、カードリーダ１０は、メモリカードインターフェイス１５を介してメモリカード１８と接続される。
【００３９】
ＣＰＵ１１は、ＲＯＭ１２やＲＡＭ１３に記憶されるプログラムやデータ或いはＬＡＮインターフェイス１４を介して送受信される各種信号に従って、バスライン１７により接続された各部を制御する演算装置である。
【００４０】
ＲＯＭ１２は、ＣＰＵ１１により実行される各種プログラムや、そのプログラムを実行する際に参照する固定値を記憶する書換不能なメモリである。このＲＯＭ１２には、制御プログラムであるＦＴＰサーバプログラム１２ａが記憶されており、このＦＴＰサーバプログラム１２ａの一部分としてｇｅｔコマンド処理モジュール１２ｂが記憶されている。また、ｇｅｔコマンド処理モジュール１２ｂの一部分としてインデックスファイル生成処理モジュール１２ｃが記憶されている。
【００４１】
ＦＴＰサーバプログラム１２ａは、ＰＣ２０との間でＦＴＰに従った通信を行うプログラムである。このプログラムは、カードリーダ１０が起動する際に、ＣＰＵ１１によって起動され、ＰＣ２０からＦＴＰのコマンドが入力されると、そのコマンドに従った処理を実行する。このとき、入力されたコマンドが「ｇｅｔ」コマンドである場合は、ｇｅｔコマンド処理モジュール１２ｂを起動して、「ｇｅｔ」コマンドに従った処理を実行する。ＦＴＰサーバプログラム１２ａは、カードリーダ１０が停止するまで実行され続ける。
【００４２】
ｇｅｔコマンド処理モジュール１２ｂは、ＦＴＰの「ｇｅｔ」コマンドに対する処理をＣＰＵ１１に実行させるためのプログラムであり、ＦＴＰサーバプログラム１２ａと連動するモジュールである。「ｇｅｔ」コマンドは、ＰＣ２０が指定したファイルの転送をカードリーダ１０に対して指示する転送命令である。
【００４３】
ｇｅｔコマンド処理モジュール１２ｂが実行されると、ＣＰＵ１１は「ｇｅｔ」コマンドで指定されたファイルをＰＣ２０へ転送する。このとき、「ｇｅｔ」コマンドで指定されたファイルがインデックスファイルである場合には、インデックスファイル生成処理モジュール１２ｃを起動し、生成されたインデックスファイルをＰＣ２０へ転送する。また、「ｇｅｔ」コマンドで指定されたファイルが存在しなかった場合、及び、インデックスファイルが生成できなかった場合は、「ＮＧ」コードをＰＣ２０へ返信する。そして、ＣＰＵ１１は、ファイルの転送若しくは「ＮＧ」コードの返信を行った後、ｇｅｔコマンド処理モジュール１２ｂの実行を終了する。
【００４４】
そして、ＰＣ２０が、メモリカード１８の所定のディレクトリに存在する（実際には、存在するものとして取り扱った）インデックスファイルを指定ファイルとした「ｇｅｔ」コマンドを送信すると、カードリーダ１０は、その所定のディレクトリのインデックスファイルをインデックスファイル生成処理モジュール１２ｃによって生成し、ＰＣ２０へ返信する。このため、「ｇｅｔ」コマンドが送信された時点ではメモリカード１８に存在しないインデックスファイルの実体を、ＰＣ２０のユーザは、取り扱うことができる。
【００４５】
インデックスファイル生成処理モジュール１２ｃは、インデックスファイルを生成する処理をＣＰＵ１１に実行させるためのプログラムであり、ｇｅｔコマンド処理モジュール１２ｂと連動するモジュールである。
【００４６】
ここで、図２（ａ）を参照して、インデックスファイルについて説明する。図２（ａ）は、ＰＣ２０のＷＷＷブラウザ２４ａによって液晶ディスプレイ（ＬＣＤ：Ｌｉｑｕｉｄ  Ｃｒｙｓｔａｌ  Ｄｉｓｐｌａｙ）２８に表示されたインデックスファイル５０の表示画面図である。このインデックスファイル５０は、メモリカード１８の最上位ディレクトリであるルートディレクトリを所定のディレクトリとしたインデックスファイルであり、ファイルの実体はＨＴＭＬ（Ｈｙｐｅｒｔｅｘｔ  Ｍａｋｅｕｐ  Ｌａｎｇｕａｇｅ）によって記述されている。
【００４７】
このインデックスファイル５０には、表示されたインデックスファイル５０がメモリカード１８のルートディレクトリのインデックスファイルであることを示した、「Ｉｎｄｅｘ  ｏｆ  ／ａａａ」という文字列が記載されている
【００４８】
そして、ルートディレクトリに存在する全てのサブディレクトリ「Ｐｈｏｔｏ」、「Ｍｕｓｉｃ」、「Ｄｏｃｕｍｅｎｔ」、及び、ファイル「ｔｅｍｐ．ｔｘｔ」の名称５０ａが、一覧となって記載されている。
【００４９】
また、サブディレクトリ「Ｐｈｏｔｏ」の名称が記載されている場所の直下で、その名称の記載開始位置よりも数文字分だけ右側にずれた位置に、サブディレクトリ「Ｐｈｏｔｏ」に含まれる全てのサブディレクトリ「Ｍａｙ」、「Ａｐｒｉｌ」、及びファイル「ｐｉｃ２００７０６１０．ｊｐｇ」、「ｐｉｃ２００７０６１１．ｊｐｇ」、「ｐｉｃ２００７０６１２．ｊｐｇ」の名称が、一覧となって記載されている。同様に、サブディレクトリ「Ｍｕｓｉｃ」の名称が記載されている場所の直下で、その名称の記載開始位置よりも数文字分だけ右側にずれた位置に、サブディレクトリ「Ｍｕｓｉｃ」に含まれる全てのファイル「ｍｕｓｉｃ１．ｍｐ３」、「ｍｕｓｉｃ２．ｍｐ３」の名称が、一覧となって記載されている。
【００５０】
なお、サブディレクトリ「Ｍｕｓｉｃ」にはサブディレクトリが存在していないため、サブディレクトリ「Ｍｕｓｉｃ」に存在するファイルの名称のみが記載されている。また、サブディレクトリ「Ｄｏｃｕｍｅｎｔ」には、ファイルもサブディレクトリも存在していないため、サブディレクトリ「Ｄｏｃｕｍｅｎｔ」の名称の右下方にはファイル名もサブディレクトリも記載されず、その直下にルートディレクトリのファイル「ｔｅｍｐ．ｔｘｔ」の名称が記載される。
【００５１】
このように、インデックスファイル５０は、ルートディレクトリに存在するサブディレクトリの名称の右下方に、そのサブディレクトリに含まれる全てのファイル及びサブディレクトリの名称を記載することにより、そのサブディレクトリに含まれる全てのファイル及びサブディレクトリもユーザに認識させることができるようになっている。これにより、１つのインデックスファイル５０で、２階層分のディレクトリに存在するファイル及びサブディレクトリが確認できる。また、ルートディレクトリに存在するサブディレクトリの名称の右下方に何も記載されず、直下に同じルートディレクトリの別のファイル若しくはサブディレクトリの名称が記載されていれば、そのサブディレクトリにはファイルもサブディレクトリも存在しないことをユーザに認識させることができるようになっている。
【００５２】
一方、サブディレクトリ「Ｐｈｏｔｏ」に存在する画像ファイル「ｐｉｃ２００７０６１０．ｊｐｇ」、「ｐｉｃ２００７０６１１．ｊｐｇ」、「ｐｉｃ２００７０６１２．ｊｐｇ」、及びルートディレクトリに存在する文書ファイル「ｔｅｍｐ．ｔｘｔ」のサムネイル５０ｂが、それぞれのファイルの名称の右方の位置に貼付されている。このサムネイル５０ｂは、画像ファイル、文書ファイル、及び図面ファイルに対して用意されるもので、各々の画像若しくはページを縮小することにより生成される。ユーザは、インデックスファイル５０に貼付されたサムネイル５０ｂにより、画像ファイル、文書ファイル、及び図面ファイルの内容を確認することができるようになっている。なお、各ファイル及びサブディレクトリの名称５０ａとサムネイル５０ｂが本発明の「識別情報」の例である。
【００５３】
更に、インデックスファイル５０には、記載された各々のファイル及びサブディレクトリの名称に、各々対応する後述のダミーファイル１８ａの所在位置（以後、「パス」と称する）を関連付けて埋め込むことにより、ダミーファイル１８ａへのリンクを設定している。これにより、ＷＷＷブラウザ２４ａに表示されたインデックスファイル５０のファイル若しくはサブディレクトリの名称を、ユーザがマウス２７によってクリックすると、ＷＷＷブラウザ２４ａはその名称に設定されたリンクを用いてダミーファイル１８ａの転送命令（「ｇｅｔ」コマンド）をカードリーダ１０へ送信する。これにより、カードリーダ１０からその指定されたダミーファイル１８ａが転送されるようになっている。
【００５４】
次に、図２（ｂ）を参照して、サブディレクトリに対して各々生成されるダミーファイル１８ａについて説明する。図２（ｂ）は、サブディレクトリ「Ｐｈｏｔｏ」に対して生成されたダミーファイル「Ｐｈｏｔｏ＿ｄｕｍｍｙ．ｈｔｍｌ」（以下、『「Ｐｈｏｔｏ」用ダミーファイル』と称する。）の内容を示す図である。
【００５５】
このダミーファイルは、ＨＴＭＬで記述されたハイパーテキスト形式のファイルである。このダミーファイルには、ＨＴＭＬ文書のヘッダ情報領域を示すタグ「＜ＨＥＡＤ＞」と「＜／ＨＥＡＤ＞」の間に、ヘッダ情報の１つであるメタタグ「＜ＭＥＴＡ  ＨＴＴＰ−ＥＱＵＩＶ＝“Ｒｅｆｒｅｓｈ”  ＣＯＮＴＥＮＴ＝“０；ｕｒｌ＝Ｐｈｏｔｏ／＿ｉｎｄｅｘ．ｈｔｍｌ”＞」が記載されている。
【００５６】
このメタタグは、ＷＷＷブラウザ２４ａに対し、キャッシュ２４ｂを使わずに「ｕｒｌ＝」によりリンクが設定されたファイルへアクセスすることを指示する指示情報である。なお、「ＣＯＮＴＥＮＴ＝“０」の「０」は、０秒後にリンク先のファイルへアクセスすることを意味している。
【００５７】
ここで、「ｕｒｌ＝」で示されたパスは、サブディレクトリ「Ｐｈｏｔｏ」のインデックスファイルのパス「Ｐｈｏｔｏ／＿ｉｎｄｅｘ．ｈｔｍｌ」である。これにより、ＷＷＷブラウザ２４ａが「Ｐｈｏｔｏ」用ダミーファイルを受信すると、ＷＷＷブラウザ２４aは０秒後に「Ｐｈｏｔｏ／＿ｉｎｄｅｘ．ｈｔｍｌ」の転送命令（「ｇｅｔ」コマンド）をカードリーダ１０に対して送信することになる。
【００５８】
なお、その他のサブディレクトリに対して生成されるダミーファイル１８ａは、メタタグに設定されたリンク先が、各々のサブディレクトリのインデックスファイルである他は、「Ｐｈｏｔｏ」用ダミーファイルと同じであるので、その説明を省略する。
【００５９】
続いて、図２（ｃ）を参照して、各ファイルに対して生成されるダミーファイル１８ａについて説明する。図２（ｃ）は、ファイル「ｔｅｍｐ．ｔｘｔ」に対して生成されたダミーファイル「ｔｅｍｐ＿ｔｘｔ＿ｄｕｍｍｙ．ｈｔｍｌ」（以下、『「ｔｅｍｐ．ｔｘｔ」用ダミーファイル』と称する。）の内容を示す図である。
【００６０】
このダミーファイルにおいて、「Ｐｈｏｔｏ」用ダミーファイルと異なる点は、「ｕｒｌ＝」で設定されたリンク先がダミーファイルを生成する基となったファイル「ｔｅｍｐ．ｔｘｔ」である点である。
【００６１】
なお、その他のファイルに対して生成されるダミーファイル１８ａは、メタタグによって設定されたリンク先が、ダミーファイルを生成する基となった各々のファイルである他は、「ｔｅｍｐ．ｔｘｔ」用ダミーファイルと同じであるので、その説明を省略する。
【００６２】
図１に戻り、インデックスファイル生成処理モジュール１２ｃの説明を続ける。ｇｅｔコマンド処理モジュール１２ｂからインデックスファイル生成処理モジュール１２ｃが起動されると、ＣＰＵ１１は、「ｇｅｔ」コマンドで指定されたインデックスファイルがあるディレクトリと、そのディレクトリにあるサブディレクトリとに存在するファイル及びサブディレクトリを検出して、インデックスファイルを生成する。
【００６３】
この際、各々のファイル及びサブディレクトリについて図２（ｂ）及び図２（ｃ）で示したダミーファイル１８ａを生成し、また、画像ファイル、文書ファイル、及び図面ファイルが存在する場合には、各々のファイルについてサムネイルを生成する。そして、各々のファイル及びサブディレクトリの名称に、対応するダミーファイル１８ａへのリンクを設定するとともに、各々のファイルの名称に対応付けてサムネイルを貼付して、図２（ａ）のように表示されるインデックスファイルを生成する。
【００６４】
インデックスファイルが生成されると、ＣＰＵ１１はインデックスファイル生成処理モジュール１２ｃの実行を終了する。なお、ＣＰＵ１１は、インデックスファイルのあるディレクトリに、ファイルやサブディレクトリが存在しないと判断した場合は、ファイルが存在しないことを記載したインデックスファイルを生成して、インデックスファイル生成処理モジュール１２ｃの実行を終了する。
【００６５】
次に、ＲＡＭ１３は、ＣＰＵ１１が各種プログラムを実行する際に必要なデータを、一時的に記憶するための書換可能で揮発性のメモリである。このＲＡＭ１３には、ファイル・ディレクトリ記憶領域１３ａと、サムネイル記憶領域１３ｂと、インデックスファイル記憶領域１３ｃとが設けられている。
【００６６】
ファイル・ディレクトリ記憶領域１３ａは、ＣＰＵ１１がインデックスファイル生成処理モジュール１２ｃを実行する際に使用するメモリ領域で、メモリカード１８から取得した各ファイル及びサブディレクトリの名称に対し、各々に対応するダミーファイル１８ａのパスと、サムネイルを生成したファイルについてはそのサムネイルのパスとを関連付けて記憶する。そして、ファイル・ディレクトリ記憶領域１３ａに記憶されたデータを基にインデックスファイルが生成される。ファイル・ディレクトリ記憶領域１３ａは、インデックスファイルが生成されると解放される。
【００６７】
サムネイル記憶領域１３ｂは、ファイル・ディレクトリ記憶領域１３ａと同様に、ＣＰＵ１１がインデックスファイル生成処理モジュール１２ｃを実行する際に使用するメモリ領域で、画像ファイル、文書ファイル、及び図面ファイルについて生成されたサムネイルのデータを記憶する。そして、ファイル・ディレクトリ記憶領域１３ａの情報を基に、ファイルの名称に対応付けて、このサムネイル記憶領域１３ｂのサムネイルを貼付したインデックスファイルが生成される。インデックスファイルが生成されると、このサムネイル記憶領域１３ｂは解放される。
【００６８】
インデックスファイル記憶領域１３ｃは、インデックスファイルを一時的に記憶するメモリ領域である。ＣＰＵ１１が、インデックスファイル生成処理モジュール１２ｃに従ってインデックスファイルを生成すると、一旦インデックスファイル記憶領域１３ｃに記憶する。そして、このインデックスファイル記憶領域１３ｃに記憶されたインデックスファイルは、ＣＰＵ１１で実行されるｇｅｔコマンド処理モジュール１２ｂにより、ＰＣ２０へ転送される。そして、ＰＣ２０への転送が完了すると、このインデックスファイル記憶領域１３ｃは解放される。
【００６９】
ＬＡＮインターフェイス１４は、カードリーダ１０をＬＡＮ４０に接続するためのインターフェイスであり、カードリーダ１０は、このＬＡＮインターフェイス１４を介してＬＡＮ４０に接続されたＰＣ２０とデータの送受信を行う。
【００７０】
メモリカードインターフェイス１５は、カードリーダに設けられたカードスロット（図示せず）にメモリカード１８が装着された場合に、そのメモリカード１８の入出力仕様に従って、メモリカード１８のデータ読み出し及び書き込みを行うインターフェイスである。
【００７１】
メモリカード１８は、書き換えができると共に電源が遮断された場合でも記憶を保持するフラッシュメモリにより構成され、各社から種々のタイプのもの（例えば、ＳＤカードやｘＤカード）が提供されている。このメモリカード１８は、複数の階層を有するディレクトリ構造に従ってファイルが格納されるようになっている。
【００７２】
また、メモリカード１８には、インデックスファイル生成処理モジュール１２ｃによりファイル及びサブディレクトリの各々に対応して生成された、ダミーファイル１８ａが格納される。このダミーファイル１８ａのパスは、各ファイル及びサブディレクトリの名称に対応付けられて、一旦ファイル・サブディレクトリ記憶領域１３ａに記憶されるようになっている。
【００７３】
計時回路１６は、現在の日時を刻む内部時計を有しており、計時を開始した日時と現在の日時とを比較して所要時間を算出する既知の回路である。
【００７４】
次に、ＰＣ２０について説明する。ＰＣ２０は、ＷＷＷブラウザ２４ａによって、カードリーダ１０のカードスロット（図示せず）に装着されたメモリカードにアクセス可能なクライアント装置である。このＰＣ２０は、図１に示すように、ＣＰＵ２１、ＲＯＭ２２、ＲＡＭ２３、ハードディスク２４、ＬＡＮインターフェイス２５、キーボード２６、マウス２７、ＬＣＤ２８、及び計時回路２９を備えており、これらはバスライン３０を介して互いに接続されている。
【００７５】
ＣＰＵ２１は、ＲＯＭ２２、ＲＡＭ２３、及びハードディスク２４に記憶されるプログラムやデータ或いはＬＡＮインターフェイス２５を介して送受信される各種信号に従って、バスライン３０により接続された各部を制御する演算装置である。
【００７６】
ＲＯＭ２２は、ＰＣ２０に接続されたＲＡＭ２３、ハードディスク２４、キーボード２６、マウス２７、及びＬＣＤ２８の入出力を制御するプログラムであるＢＩＯＳ（Ｂａｓｉｃ  Ｉｎｐｕｔ／Ｏｕｔｐｕｔ  Ｓｙｓｔｅｍ）や、ＣＰＵ２１がＢＩＯＳを実行する際に参照する各種設定を記憶する書換不能なメモリである。ＲＡＭ２３は、ＣＰＵ２１が各種プログラムを実行する際に必要なプログラムやデータを一時的に記憶するための書換可能で揮発性のメモリである。
【００７７】
ハードディスク２４は、ＯＳやアプリケーションプログラムといったＣＰＵ２１により実行される各種プログラムや各種設定を記憶する、書換可能で不揮発性のメモリディスクである。このハードディスク２４には、ＷＷＷブラウザ２４ａと、キャッシュ２４ｂと、メモリカードアクセス指示ファイル２４ｃとが記憶されている。
【００７８】
ＷＷＷブラウザ２４ａは、ＣＰＵ２１によって実行されるプログラムで、ハイパーテキスト形式のファイルをＬＣＤ２８に表示するためのアプリケーションプログラムである。このＷＷＷブラウザ２４ａでは、ハイパーテキスト形式のファイル中に設定されたリンクをマウス２７によって選択可能に表示するようになっている。
【００７９】
ＷＷＷブラウザ２４ａは、マウス２７によってＷＷＷブラウザ２４ａに表示されたリンクが選択されると、ＷＷＷブラウザ２４ａは、ＦＴＰに従って、そのリンクで示されたパスに存在するファイルの転送命令（「ｇｅｔ」コマンド）を送信し、その転送命令に応じて返信されるファイル、若しくは「ＮＧ」コードを受信する。そして、受信したファイルを表示するか、「ＮＧ」コードを受信した場合はファイルが受信できなかった旨のエラーメッセージを表示する。
【００８０】
キャッシュ２４ｂは、ＷＷＷブラウザ２４ａが使用するメモリ領域であり、ＷＷＷブラウザ２４ａが転送命令（「ｇｅｔ」コマンド）によってファイルを受信した場合に、その受信したファイルをキャッシュ２４ｂに保存する。キャッシュ２４ｂに保存されたファイルはユーザから削除されない限り保存され続け、ＷＷＷブラウザ２４ａが再び同じファイルにアクセスする場合、サーバに対してそのファイルの転送命令を送信しなくても、キャッシュ２４ｂからそのファイルを読み出すことができる。これにより、ＷＷＷブラウザ２４ａにおけるファイルの高速読み出しを可能としている。
【００８１】
ただし、ＷＷＷブラウザ２４ａでは、受信したハイパーテキスト形式のファイルに、時上述したダミーファイルに記載されているような、キャッシュ２４ｂを使わずに指定されたファイルへアクセスすることを指示する指示情報があった場合、そのキャッシュ２４ｂからファイルを読み出さずに、直接サーバに対して指定されたファイルの転送命令を送信する。これにより、サーバから常に最新のファイルを受信することができるようになっている。
【００８２】
メモリカードアクセス指示ファイル２４ｃは、カードリーダ１０に装着されたメモリカード１８からルートディレクトリのインデックスファイル５０を受信するよう、ＷＷＷブラウザ２４ａに対して指示する指示情報が記載されたファイルである。このメモリカードアクセス指示ファイル２４ｃが、キーボード２６又はマウス２７により選択されると、ＷＷＷブラウザ２４ａが起動される。そして、ＷＷＷブラウザ２４ａはメモリカードアクセス指示ファイル２４ｃの指示情報に従い、ＦＴＰに則して、ルートディレクトリのインデックスファイル５０の転送命令（「ｇｅｔ」コマンド）をカードリーダ１０に対し送信する。
【００８３】
ここで、図３を参照してメモリカードアクセス指示ファイル２４ｃについて説明する。まず、図３（ａ）は、ＰＣ２０のＯＳによりＬＣＤ２８に表示されるデスクトップ環境の表示画面図である。図３（ａ）に示すように、このＯＳのデスクトップ環境には、メモリカードアクセス指示ファイル２４ｃのアイコン「メモリカードアクセス指示ファイル」が表示されている。ユーザは、キーボード２６若しくはマウス２７によってカーソルをアイコン「メモリカードアクセス指示ファイル」に合わせ、キーボード２６のエンターキー（図示せず）、若しくはマウス２７のクリックボタン（図示せず）を押すことにより、メモリカードアクセス指示ファイル２４ｃを選択することができる。
【００８４】
次に図３（ｂ）は、メモリカードアクセス指示ファイル２４ｃ「ｄｕｍｍｙ．ｈｔｍｌ」（以下、『「ｄｕｍｍｙ．ｈｔｍｌ」２４ｃ』と称する。）の内容を示す図である。この「ｄｕｍｍｙ．ｈｔｍｌ」２４ｃには、図２（ｂ）の「Ｐｈｏｔｏ」用ダミーファイルと同様のメタタグが記載されている。
【００８５】
このメタタグにおいて、「Ｐｈｏｔｏ」用ダミーファイルと異なる点は、「ｕｒｌ＝」で示されたパスが、メモリカード１８のルートディレクトリのインデックスファイル「／／ａａａ／＿ｉｎｄｅｘ．ｈｔｍｌ」である点である。これにより、メモリカードアクセス指示ファイル２４ｃが選択されると、ＷＷＷブラウザ２４ａは「ｄｕｍｍｙ．ｈｔｍｌ」２４ｃの内容に従って、０秒後に「／／ａａａ／＿ｉｎｄｅｘ．ｈｔｍｌ」の転送命令（「ｇｅｔ」コマンド）をカードリーダ１０に対して送信する。
【００８６】
なお、「ｕｒｌ＝」の後の「ｆｔｐ：」は、ＦＴＰに従って「／／ａａａ／＿ｉｎｄｅｘ．ｈｔｍｌ」の転送命令（「ｇｅｔ」コマンド）を送信するよう、ＷＷＷブラウザ２４ａに指示するためのものである。
【００８７】
図１に戻り、説明を続ける。ＬＡＮインターフェイス２５は、ＰＣ２０をＬＡＮ４０に接続するためのインターフェイスである。キーボード２６及びマウス２７は、ユーザがＰＣ２０に対して文字や指示を入力する入力デバイスである。ＬＣＤ２８は、ＣＰＵ２１によって実行されたプログラムの各種情報を表示する表示デバイスである。計時回路２９は、現在の日時を刻む内部時計を有しており、計時を開始した日時と現在の日時とを比較して所要時間を算出する既知の回路である。
【００８８】
次に、図４を参照してカードリーダ１０のＣＰＵ１１で実行されるｇｅｔコマンド処理モジュールの処理フローについて説明する。図４は、このｇｅｔコマンド処理モジュール１２ｂのフローチャートである。このモジュールは、上述したように、ＣＰＵ１１がＦＴＰサーバプログラム１２ａを実行中にＰＣ２０から「ｇｅｔ」コマンドが入力された場合に起動される。
【００８９】
このモジュールでは、まず、「ｇｅｔ」コマンドで指定されたファイル名の末尾が「＿ｉｎｄｅｘ．ｈｔｍｌ」と一致するかを確認する（Ｓ４１１）。ファイル転送システム１において、インデックスファイルのファイル名は「＿ｉｎｄｅｘ．ｈｔｍｌ」と決められている。よって、Ｓ４１１の処理により、「ｇｅｔ」コマンドで指定されたファイルがインデックスファイルであるかどうかを判断する。
【００９０】
そして、Ｓ４１１の処理で、「ｇｅｔ」コマンドで指定されたファイル名の末尾が「＿ｉｎｄｅｘ．ｈｔｍｌ」と一致する場合は（Ｓ４１１：Ｙｅｓ）、指定されたファイルはインデックスファイルであることから、後述のインデックスファイル生成処理モジュール１２ｃを実行する（Ｓ４１２）。これにより、所定のディレクトリのインデックスファイルが生成され、生成されたインデックスファイルはインデックスファイル記憶領域１３ｃに記憶される。また、Ｓ４１１の処理で、「ｇｅｔ」コマンドで指定されたファイル名の末尾が「＿ｉｎｄｅｘ．ｈｔｍｌ」と一致しない場合は（Ｓ４１１：Ｎｏ）、指定されたファイルがメモリカード１８にその実体が格納されたファイルであると判断し、そのファイルをメモリカード１８から読み出して、ファイルの実体を取得する（Ｓ４１３）。
【００９１】
Ｓ４１２の処理、又は、Ｓ４１３の処理の後、「ｇｅｔ」コマンドで指定されたファイルがＳ４１２の処理で生成できたか、又は、Ｓ４１３の処理で取得できたかを確認する（Ｓ４１４）。そして、指定されたファイルが生成又は取得できた場合は（Ｓ４１４：Ｙｅｓ）、「ＯＫ」コードとともに、Ｓ４１２の処理でインデックスファイル記憶領域１３ｃに記憶されたインデックスファイル、又は、Ｓ４１３の処理で取得したファイルを、ＰＣ２０へ返信する（Ｓ４１５）。そして、このモジュールの実行を終了する。これにより、「ｇｅｔ」コマンドで指定されたファイルをＰＣ２０へ転送することができる。
【００９２】
また、Ｓ４１４の処理で、「ｇｅｔ」コマンドで指定されたファイルが生成又は取得できなかったと判断した場合は（Ｓ４１４：Ｎｏ）、「ＮＧ」コードをＰＣ２０へ返信し（Ｓ４１６）、このモジュールの実行を終了する。これにより、ＰＣ２０のユーザに対して、「ｇｅｔ」コマンドで指定したファイルが存在しないことを知らせることができる。
【００９３】
このように、このｇｅｔコマンド処理モジュール１２ｂによって、ＰＣ２０から入力された「ｇｅｔ」コマンドに対する処理を実行し、「ｇｅｔ」コマンドで指定されたファイルがインデックスファイルである場合はインデックスファイルを生成し、メモリカード１８に格納されているファイルである場合は、メモリカード１８からそのファイルの実体を取得して、ＰＣ２０に転送することができる。
【００９４】
次に、図５のフローチャートを参照してカードリーダ１０のＣＰＵ１１で実行されるインデックスファイル生成処理モジュール１２ｃの処理フローについて説明する。図５は、このインデックスファイル生成処理モジュール１２ｃのフローチャートである。このモジュールでは、所定のディレクトリのインデックスファイルを生成し、生成したインデックスファイルをインデックスファイル記憶領域１３ｃに記憶する。
【００９５】
図５に示すように、このモジュールでは、まず、「ｇｅｔ」コマンドで指定されたインデックスファイルのパスから、インデックスファイルが存在する（実際には、存在するものとして取り扱われている）ディレクトリを特定し、それを親ディレクトリとして設定する（Ｓ５００）。
【００９６】
次に、親ディレクトリにファイルやサブディレクトリが存在するかを確認する（Ｓ５０１）。そして、ファイルもサブディレクトリも存在しない場合は（Ｓ５０１：Ｎｏ）、ファイルが存在しないことを記載したインデックスファイルを生成し、これをインデックスファイル記憶領域１３ｃに記憶して（Ｓ５０２）、このモジュールの実行を終了する。よって、このインデックスファイルがＷＷＷブラウザ２４ａに表示されれば、ＰＣ２０のユーザは、指定したディレクトリにファイルが存在しないことを認識することができる。
【００９７】
一方、Ｓ５０１の処理により、親ディレクトリにファイルやサブディレクトリが存在すると判断された場合（Ｓ５０１：Ｙｅｓ）、Ｓ５０３の処理に移行し、親ディレクトリと、親ディレクトリにあるサブディレクトリとに存在するファイル及びサブディレクトリの一覧の生成を開始する。
【００９８】
Ｓ５０３では、親ディレクトリを「指定ディレクトリ」として設定する。続くＳ５０４〜Ｓ５０８の処理は、この「指定ディレクトリ」に対して行われる。なお、この「指定ディレクトリ」には親ディレクトリの他に、後述のＳ５１０の処理により、親ディレクトリに存在するサブディレクトリも設定される。
【００９９】
Ｓ５０４では、指定ディレクトリにファイルやサブディレクトリが存在するかを確認する。そして、指定ディレクトリにファイルやサブディレクトリが存在する場合は（Ｓ５０４：Ｙｅｓ）、Ｓ５０５の処理へ移行し、その指定ディレクトリに対して、インデックスファイルの生成に必要なデータの準備を行う。一方、指定ディレクトリにファイルやサブディレクトリが存在しない場合は（Ｓ５０４：Ｎｏ）、その指定ディレクトリに対しインデックスファイルの生成に必要なデータの準備は不要であるので、Ｓ５０９へ移行する。
【０１００】
Ｓ５０５では、指定ディレクトリにあるファイル及びサブディレクトリを検出し、各々の名称とパスとをメモリカード１８から取得する。これにより、指定ディレクトリに存在する全てのファイル及びサブディレクトリの名称とパスとが取得される。
【０１０１】
続いて、指定ディレクトリにある各サブディレクトリと各ファイルについて、上述したダミーファイルを各々生成する（Ｓ５０６）。なお、Ｓ５０５の処理で取得したパスは、これらのダミーファイルを生成する際に、各々のダミーファイルに設定されるリンク先のパスとして用いられる。
【０１０２】
次に、指定ディレクトリにあるファイルのうち、画像ファイル、文書ファイル、図面ファイルについて、それぞれ画像若しくはページを縮小したサムネイルを生成し、サムネイル記憶領域１３ｂに記憶する（Ｓ５０７）。
【０１０３】
そして、指定ディレクトリにあるファイル及びサブディレクトリの各々の名称に対し、各々について生成したダミーファイルのパスと、サムネイルを生成したものについてはサムネイルのパスとをそれぞれ対応付けて、ファイル・ディレクトリ記憶領域１３ａに記憶する（Ｓ５０８）。これにより、指定ディレクトリに対して、インデックスファイルの生成に必要なデータの準備を終了し、Ｓ５０９の処理へ移行する
【０１０４】
Ｓ５０９では、親ディレクトリに存在する全てのサブディレクトリについて、Ｓ５０４の処理でファイル及びサブディレクトリの存在の有無を調べたかを確認する。そして、親ディレクトリ内に、ファイル及びサブディレクトリの存在の有無を調べていないサブディレクトリが存在する場合（Ｓ５０９：Ｎｏ）、そのサブディレクトリの１つを新たな指定ディレクトリに設定し（Ｓ５１０）、再びＳ５０４からＳ５０９までの処理を実行する。これにより、新たに設定された指定ディレクトリについて、その指定ディレクトリにファイルやサブディレクトリが存在するかが確認され（Ｓ５０４）、ファイルやサブディレクトリが存在する場合には（Ｓ５０４：Ｙｅｓ）、その指定ディレクトリに対して、インデックスファイルの生成に必要なデータの準備を行う（Ｓ５０５〜Ｓ５０８）。
【０１０５】
そして、Ｓ５０９の処理により、親ディレクトリに存在する全てのサブディレクトリについて、ファイル及びサブディレクトリの存在の有無が調べたことが確認される（Ｓ５０９：Ｙｅｓ）まで、Ｓ５０４からＳ５１０の処理を繰り返し実行する。これにより、親ディレクトリと、親ディレクトリに存在する全てのサブディレクトリについて、インデックスファイルの生成に必要なデータの準備を行う。
【０１０６】
一方、Ｓ５０９の処理で、親ディレクトリに存在する全てのサブディレクトリについて、ファイル及びサブディレクトリの存在の有無を調べたと判断されると（Ｓ５０９：Ｙｅｓ）、ファイル・ディレクトリ記憶領域１３ａに記憶された情報を基に、図２（ａ）に示すようなインデックスファイルを生成する（Ｓ５１１）。すなわち、Ｓ５１１では、ファイル・ディレクトリ記憶領域１３ａに記憶されたファイル及びサブディレクトリの各々の名称に、それぞれ対応するダミーファイルのリンクを設定し、また、サムネイルを生成したファイルに対し、各々のファイルの名称に対応付けてそれぞれのサムネイルを貼付した、インデックスファイルを生成する。そして、生成されたインデックスファイルをインデックスファイル記憶領域１３ｃに記憶した後、このインデックスファイル生成処理モジュール１２ｃを終了する。
【０１０７】
次に、図６を参照して、ファイル転送システム１の動作について説明する。図６は、ファイル転送システム１の動作の順序を示すシーケンスチャートである。図６に示すように、ファイル転送システム１では、まず、ＰＣ２０のユーザ７０が、ＰＣ２０のＬＣＤ２８に表示されたデスクトップ環境の表示画面から、「ｄｕｍｍｙ．ｈｔｍｌ」（メモリカードアクセス指示ファイル）２４ｃを選択すると、ＣＰＵ２１がＷＷＷブラウザ２４ａを起動し、ＷＷＷブラウザ２４ａに対し、「ｄｕｍｍｙ．ｈｔｍｌ」２４ｃが選択されたことを通知する（Ｓ６０１）。これを受けて、ＷＷＷブラウザ２４ａは、キャッシュ２４ｂに対し「ｄｕｍｍｙ．ｈｔｍｌ」２４ｃの転送命令を送信する（Ｓ６０２）。
【０１０８】
そして、キャッシュ２４ｂに「ｄｕｍｍｙ．ｈｔｍｌ」２４ｃが存在する場合、キャッシュ２４ｂはＷＷＷブラウザ２４ａに対して「ｄｕｍｍｙ．ｈｔｍｌ」２４ｃを転送する（Ｓ６０３）。なお、キャッシュ２４ｂに「ｄｕｍｍｙ．ｈｔｍｌ」２４ｃが存在しない場合は、キャッシュ２４ｂからＷＷＷブラウザ２４ａに対して「ｄｕｍｍｙ．ｈｔｍｌ」２４ｃの転送不可通知が送信される。この場合、ＷＷＷブラウザ２４ａは、ハードディスク２４から直接「ｄｕｍｍｙ．ｈｔｍｌ」２４ｃを読み出す。そして、読み出した「ｄｕｍｍｙ．ｈｔｍｌ」２４ｃをキャッシュ２４ｂに書き込む。
【０１０９】
続いて、ＷＷＷブラウザ２４ａは、「ｄｕｍｍｙ．ｈｔｍｌ」２４ｃの内容を解析する（Ｓ６０４）。そして、ＷＷＷブラウザ２４ａは「ｄｕｍｍｙ．ｈｔｍｌ」２４ｃの内容に従って、キャッシュを使わずに、メモリカード１８のルートディレクトリのインデックスファイル「＿ｉｎｄｅｘ．ｈｔｍｌ」の転送命令（「ｇｅｔ」コマンド）をカードリーダ１０に対して送信する（Ｓ６０５）。これにより、過去に、「＿ｉｎｄｅｘ．ｈｔｍｌ」がキャッシュ２４ｂに記憶された場合でも、カードリーダ１０に対して、最新の「＿ｉｎｄｅｘ．ｈｔｍｌ」を生成させることができる。
【０１１０】
続いて、カードリーダ１０では、インデックスファイル生成処理モジュール１２ｃによって、ルートディレクトリに存在するファイル及びサブディレクトリを検出して、「＿ｉｎｄｅｘ．ｈｔｍｌ」を生成し（Ｓ６０６）、これをＷＷＷブラウザ２４ａに返信する（Ｓ６０７）。そして、ＷＷＷブラウザ２４ａは、受信した「＿ｉｎｄｅｘ．ｈｔｍｌ」をユーザ７０に対し表示する（Ｓ６０８）。
【０１１１】
このように、カードリーダ１０において、ルートディレクトリに存在するファイル及びサブディレクトリを検出して、「＿ｉｎｄｅｘ．ｈｔｍｌ」を生成するので、ＷＷＷブラウザ２４ａには、ルートディレクトリに存在するファイル及びサブディレクトリを正確に表示させることができる。また、「＿ｉｎｄｅｘ．ｈｔｍｌ」の転送命令（「ｇｅｔ」コマンド）を受信する毎に、「＿ｉｎｄｅｘ．ｈｔｍｌ」を生成するので、そのときにルートディレクトリに存在するファイル及びサブディレクトリがインデックスファイルに反映される。よって、ＷＷＷブラウザ２４ａに対し、メモリカード１８に格納されているファイル及びサブディレクトリの最新の情報を表示させることができる。
【０１１２】
なお、ＷＷＷブラウザ２４ａに表示された「＿ｉｎｄｅｘ．ｈｔｍｌ」は、キャッシュ２４ｂに書き込まれる（Ｓ６０９）。ただし、上述した通り、「ｄｕｍｍｙ．ｈｔｍｌ」２４ｃによって、キャッシュ２４ｂに書き込まれた「＿ｉｎｄｅｘ．ｈｔｍｌ」が読み出されることなく、カードリーダ１０に対して「＿ｉｎｄｅｘ．ｈｔｍｌ」の転送命令（「ｇｅｔ」コマンド）が送信される。
【０１１３】
続いて、ユーザ７０が、ＷＷＷブラウザ２４ａに表示された「＿ｉｎｄｅｘ．ｈｔｍｌ」からファイルの名称「ｔｅｍｐ．ｔｘｔ」を選択すると（Ｓ６１０）、ＷＷＷブラウザ２４ａは、ファイルの名称「ｔｅｍｐ．ｔｘｔ」に対して設定されたリンクを基に、「ｔｅｍｐ．ｔｘｔ」用ダミーファイル「ｔｅｍｐ＿ｔｘｔ＿ｄｕｍｍｙ．ｈｔｍｌ」の転送命令を、キャッシュ２４ｂに対して送信する（Ｓ６１１）。
【０１１４】
そして、キャッシュ２４ｂに「ｔｅｍｐ．ｔｘｔ」用ダミーファイルが存在しない場合、キャッシュ２４ｂからＷＷＷブラウザ２４ａに対して「ｔｅｍｐ．ｔｘｔ」用ダミーファイルの転送不可通知が送信される（Ｓ６１２）。この場合、ＷＷＷブラウザ２４ａは、カードリーダ１０に対し、「ｔｅｍｐ．ｔｘｔ」用ダミーファイルの転送命令（「ｇｅｔ」コマンド）を送信する（Ｓ６１３）。そして、カードリーダ１０は、メモリカード１８に記憶された「ｔｅｍｐ．ｔｘｔ」用ダミーファイルを取得し、ＷＷＷブラウザ２４ａに転送する（Ｓ６１４）。ＷＷＷブラウザ２４ａは、「ｔｅｍｐ．ｔｘｔ」用ダミーファイルを受信すると、それをキャッシュ２４ｂに書き込む（Ｓ６１５）。
【０１１５】
なお、キャッシュ２４ｂに「ｔｅｍｐ．ｔｘｔ」用ダミーファイルが存在する場合は、キャッシュ２４ｂからＷＷＷブラウザ２４ａに対して「ｔｅｍｐ．ｔｘｔ」用ダミーファイルを転送する。「ｔｅｍｐ．ｔｘｔ」用ダミーファイルの内容は、図２（ｃ）で示した内容から変わることがないので、キャッシュ２４ｂに記憶された過去のファイルを使用しても問題とはならない。
【０１１６】
続いて、ＷＷＷブラウザ２４ａは、「ｔｅｍｐ．ｔｘｔ」用ダミーファイルの内容を解析する（Ｓ６１６）。そして、その内容に従って、キャッシュを使わずに、メモリカード１８のファイル「ｔｅｍｐ．ｔｘｔ」の転送命令（「ｇｅｔ」コマンド）をカードリーダ１０に対して送信する（Ｓ６１７）。カードリーダ１０は、この転送命令を受けて、メモリカード１８に記憶された「ｔｅｍｐ．ｔｘｔ」を取得し、ＷＷＷブラウザ２４ａに転送する（Ｓ６１８）。そして、ＷＷＷブラウザ２４ａは、「ｔｅｍｐ．ｔｘｔ」をユーザ７０に対して表示する（Ｓ６１９）。これにより、過去に、「ｔｅｍｐ．ｔｘｔ」がキャッシュ２４ｂに記憶された場合でも、カードリーダ１０から最新の「ｔｅｍｐ．ｔｘｔ」を読み出し、ユーザに対して表示させることができる。
【０１１７】
なお、ＷＷＷブラウザ２４ａに表示された「ｔｅｍｐ．ｔｘｔ」は、キャッシュ２４ｂに書き込まれる（Ｓ６２０）。しかし、「ｔｅｍｐ．ｔｘｔ」用ダミーファイルにより、そのキャッシュ２４ｂに書き込まれた「ｔｅｍｐ．ｔｘｔ」が読み出されることなく、カードリーダ１０に対して「ｔｅｍｐ．ｔｘｔ」の転送命令（「ｇｅｔ」コマンド）が送信される。
【０１１８】
一方、ユーザ７０が、ＷＷＷブラウザ２４ａに表示された「＿ｉｎｄｅｘ．ｈｔｍｌ」からサブディレクトリの名称「Ｐｈｏｔｏ」を選択すると（Ｓ６２１）、ＷＷＷブラウザ２４ａは、サブディレクトリの名称「Ｐｈｏｔｏ」に対して設定されたリンクを基に、「Ｐｈｏｔｏ」用ダミーファイル「Ｐｈｏｔｏ＿ｄｕｍｍｙ．ｈｔｍｌ」の転送命令を、キャッシュ２４ｂに対して送信する（Ｓ６２２）。
【０１１９】
そして、キャッシュ２４ｂに「Ｐｈｏｔｏ」用ダミーファイルが存在する場合は、キャッシュ２４ｂからＷＷＷブラウザ２４ａに対して「Ｐｈｏｔｏ」用ダミーファイルを転送する（Ｓ６２３）。「Ｐｈｏｔｏ」用ダミーファイルの内容は、図２（ｂ）で示した内容から変わることがないので、キャッシュ２４ｂに記憶された過去のファイルを使用しても問題とはならない。
【０１２０】
なお、キャッシュ２４ｂに「Ｐｈｏｔｏ」用ダミーファイルが存在しない場合は、「ｔｅｍｐ．ｔｘｔ」用ダミーファイルについて行ったＳ６１３〜Ｓ６１５の処理を、「Ｐｈｏｔｏ」用ダミーファイルについて行う。
【０１２１】
続いて、ＷＷＷブラウザ２４ａは、「Ｐｈｏｔｏ」用ダミーファイルの内容を解析する（Ｓ６２４）。そして、ＷＷＷブラウザ２４ａは「Ｐｈｏｔｏ」用ダミーファイルの内容に従って、キャッシュを使わずに、サブディレクトリ「Ｐｈｏｔｏ」のインデックスファイル「Ｐｈｏｔｏ／＿ｉｎｄｅｘ．ｈｔｍｌ」の転送命令（「ｇｅｔ」コマンド）をカードリーダ１０に対して送信する（Ｓ６２５）。
【０１２２】
これにより、キャッシュ２４ｂに、「Ｐｈｏｔｏ／＿ｉｎｄｅｘ．ｈｔｍｌ」が過去に記憶されていた場合でも、カードリーダ１０に対して、最新の「Ｐｈｏｔｏ／＿ｉｎｄｅｘ．ｈｔｍｌ」を生成させることができる。
【０１２３】
続いて、カードリーダ１０では、インデックスファイル生成処理モジュール１２ｃによって、サブディレクトリ「Ｐｈｏｔｏ」に存在するファイル及びサブディレクトリを検出して、「Ｐｈｏｔｏ／＿ｉｎｄｅｘ．ｈｔｍｌ」を生成し（Ｓ６２６）、これをＷＷＷブラウザ２４ａに返信する（Ｓ６２７）。そして、ＷＷＷブラウザ２４ａは、受信した「Ｐｈｏｔｏ／＿ｉｎｄｅｘ．ｈｔｍｌ」をユーザ７０に対し表示する（Ｓ６２８）。
【０１２４】
このように、カードリーダ１０において、サブディレクトリ「Ｐｈｏｔｏ」に存在するファイル及びサブディレクトリを検出して、「Ｐｈｏｔｏ／＿ｉｎｄｅｘ．ｈｔｍｌ」を生成するので、ＷＷＷブラウザ２４ａには、サブディレクトリ「Ｐｈｏｔｏ」に存在するファイル及びサブディレクトリを正確に表示させることができる。また、「Ｐｈｏｔｏ／＿ｉｎｄｅｘ．ｈｔｍｌ」の転送命令（「ｇｅｔ」コマンド）を受信する毎に、「Ｐｈｏｔｏ／＿ｉｎｄｅｘ．ｈｔｍｌ」を生成するので、そのときにサブディレクトリ「Ｐｈｏｔｏ」に存在するファイル及びサブディレクトリがインデックスファイルに反映される。よって、ＷＷＷブラウザ２４ａに対し、メモリカード１８に格納されているファイル及びサブディレクトリの最新の情報を表示させることができる。
【０１２５】
なお、ＷＷＷブラウザ２４ａに表示された「Ｐｈｏｔｏ／＿ｉｎｄｅｘ．ｈｔｍｌ」は、キャッシュ２４ｂに書き込まれる（Ｓ６２９）。しかし、「Ｐｈｏｔｏ」用ダミーファイルによって、上述の通り、そのキャッシュ２４ｂに書き込まれた「Ｐｈｏｔｏ／＿ｉｎｄｅｘ．ｈｔｍｌ」が読み出されることなく、カードリーダ１０に対して「Ｐｈｏｔｏ／＿ｉｎｄｅｘ．ｈｔｍｌ」の転送命令（「ｇｅｔ」コマンド）が送信される。
【０１２６】
以上説明したように、第１実施形態のファイル転送システム１では、カードリーダ１０がインデックスファイル生成処理モジュールによって、所定のディレクトリに存在するファイル及びサブディレクトリを検出してからインデックスファイルを生成するので、そのインデックスファイルにより、所定のディレクトリに存在するファイル及びサブディレクトリを正確にＷＷＷブラウザ２４ａに表示させることができる。よって、そのインデックスファイルに設定されたリンクによって、ＷＷＷブラウザ２４ａから所望のファイルにアクセスさせることができる。従って、ＰＣ２０からカードリーダ１０に装着されたメモリカード１８に格納されているファイルへ確実にアクセスさせることができる。
【０１２７】
また、インデックスファイルによって、所定のディレクトリに存在するファイル及びサブディレクトリを正確にＷＷＷブラウザ２４ａに表示させることができるので、ＰＣ２０のユーザは、所定のディレクトリに存在するファイル及びサブディレクトリの内容を、インデックスファイルに記載された各々の名称によって推定することができる。よって、ユーザに対して効率的に所望のファイルやサブディレクトリを確認させることができる。
【０１２８】
更に、カードリーダ１０でハイパーテキスト形式のインデックスファイルを生成してＷＷＷブラウザ２４ａに送信するので、ＰＣ２０がハイパーテキスト形式のファイルに対応したＷＷＷブラウザ２４ａを備えていれば、そのインデックスファイルを表示させることができる。よって、異なる種類のＷＷＷブラウザ２４ａを用いても、同じ使用感でファイルへのアクセスを行わせることができる。
【０１２９】
また、カードリーダ１０は、所定のディレクトリのインデックスファイルの転送命令を受信した場合に、その所定のディレクトリのインデックスファイルを生成するので、インデックスファイルの転送命令を受信したときに所定のディレクトリに存在するファイル及びサブディレクトリがインデックスファイルに反映される。よって、ＷＷＷブラウザ２４ａに対し、メモリカード１８に格納されているファイル及びサブディレクトリの最新の情報を表示させることができる。
【０１３０】
また、カードリーダ１０は、所定のディレクトリに存在するサブディレクトリの名称に対し、各々のサブディレクトリのインデックスファイルへのリンクが設定されたインデックスファイルを生成するので、ユーザがＷＷＷブラウザ２４ａに表示されたインデックスファイルからサブディレクトリの名称を選択すると、そのサブディレクトリのインデックスファイルがカードリーダ１０で生成され、ＷＷＷブラウザ２４ａにそのインデックスファイルが表示される。よって、ＷＷＷブラウザ２４ａに対し、サブディレクトリに存在するファイルやサブディレクトリを正確かつ容易に表示させることができるので、ＰＣ２０に対し、下層のサブディレクトリに格納されているファイルへのアクセスを容易に行わせることができる。
【０１３１】
また、カードリーダ１０は、インデックスファイルの中でファイル及びサブディレクトリのリンク先として各々設定したダミーファイルによって、ＷＷＷブラウザ２４ａに対しキャッシュを使わずに直接メモリカード１８のファイル若しくはサブディレクトリにアクセスするよう指示することができる。よって、ＷＷＷブラウザ２４ａでファイル若しくはサブディレクトリの名称が選択された場合、そのファイル若しくはサブディレクトリについて過去のデータがキャッシュに記憶されていた場合であっても、ＰＣ２０からメモリカード１８の最新のファイル若しくはサブディレクトリへアクセスさせることができる。
【０１３２】
また、カードリーダ１０は、所定のディレクトリとその所定のディレクトリにあるサブディレクトリとについて、各々のディレクトリ及びサブディレクトリに存在するファイル及びサブディレクトリを検出し、それらの一覧が記載されたインデックスファイルを生成するので、ユーザが所定のディレクトリと所定のディレクトリにあるサブディレクトリとに存在するファイル及びサブディレクトリの一覧を一度のインデックスファイル転送命令で確認することができる。また、サブディレクトリに存在するファイルやサブディレクトリに設定されたリンクを用いて、それらにアクセスすることができる。よって、ＰＣ２０のユーザに対し、メモリカード１８の下層のサブディレクトリに格納されている所望のファイルを少ない操作で発見させ、そのファイルへのアクセスを容易に行わせることができる。
【０１３３】
また、カードリーダ１０は、画像、文書、及び図面ファイルについて各々サムネイルを生成し、ファイルの名称に対応させて各々のサムネイルを貼付してインデックスファイルを生成するので、ＰＣ２０のユーザは、ＷＷＷブラウザ２４ａに表示されたインデックスファイルから、各々のファイルのサムネイルにより、その内容を確認することができる。よって、ＰＣ２０に対し、メモリカード１８に格納されているファイルの内容を容易に確認させることができる。
【０１３４】
次に、図１、及び図７から図９を参照して、第２実施形態におけるファイル転送システム１について説明する。この第２実施形態のファイル転送システム１において、カードリーダ１０は、ＰＣ２０との間でハイパーテキスト転送プロトコル（ＨＴＴＰ：Ｈｙｐｅｒｔｅｘｔ  Ｔｒａｎｓｆｅｒ  Ｐｒｏｔｏｃｏｌ）に従った通信を行う。そして、ＬＡＮ４０を介してメモリカード１８に格納されたファイルをＰＣ２０へ転送する。このとき、カードリーダ１０は、ＨＴＴＰのヘッダ領域に「ファイルのキャッシュを行わない」というＷＷＷブラウザ２４ａに対する命令を付加して送信する。
【０１３５】
この第２実施形態におけるファイル転送システム１の電気的構成は、上述した第１実施形態とほぼ同一であるので、その図示を省略し、以下、図１を参照しながら、第１実施形態と異なる点を説明する。
【０１３６】
この第２実施形態において、ＲＯＭ１２には、第１実施形態のＦＴＰサーバプログラム１２ａの代わりに、ＨＴＴＰサーバプログラムが記憶されている。このＨＴＴＰサーバプログラムは、ＰＣ２０との間でＨＴＴＰに従った通信を行う際にＣＰＵ１１によって実行されるプログラムであり、その処理内容は通信プロトコルとしてＨＴＴＰに従うことを除いて、ＦＴＰサーバプログラム１２ａと同一である。
【０１３７】
また、ＲＯＭ１２には、第１実施形態のＦＴＰサーバプログラム１２ａと同様、ＨＴＴＰサーバプログラムの一部分としてｇｅｔコマンド処理モジュール１２ｂが記憶され、また、ｇｅｔコマンド処理モジュール１２ｂの一部分としてインデックスファイル生成処理モジュール１２ｃが記憶されている。
【０１３８】
第２実施形態のｇｅｔコマンド処理モジュール１２ｂは、ＨＴＴＰの「ｇｅｔ」コマンドに対する処理をＣＰＵ１１に実行させるためのプログラムであり、ＨＴＴＰサーバプログラムと連動するモジュールである。ＨＴＴＰの「ｇｅｔ」コマンドは、ＦＴＰの「ｇｅｔ」コマンドと同様に、ＰＣ２０が指定したファイルの転送をカードリーダ１０に対して指示する転送命令である。ＣＰＵ１１は、ＨＴＴＰサーバプログラムの実行中にＰＣ２０から「ｇｅｔ」コマンドを受信すると、ＣＰＵ１１はこのｇｅｔコマンド処理モジュール１２ｂの実行を開始する。そして、「ｇｅｔ」コマンドで指定されたファイルをＰＣ２０に返信するか、エラーコードを返信すると、このモジュールの実行を終了する。
【０１３９】
この第２実施形態のｇｅｔコマンド処理モジュール１２ｂにおいて、第１実施形態のｇｅｔコマンド処理モジュール１２ｂと異なる点は、まず、「ｇｅｔ」コマンドで指定されたファイルがインデックスファイルであった場合、後述する第２実施形態のインデックスファイル生成処理モジュール１２ｃを実行する点である。また、「ｇｅｔ」コマンドで指定されたファイルをＰＣ２０に対して返信する際、ＨＴＴＰのヘッダ領域に「ファイルのキャッシュを行わない」というＷＷＷブラウザ２４ａに対する命令を付加し、ファイルに先駆けて送信する。更に、「ｇｅｔ」コマンドで指定されたファイルがインデックスファイル生成処理モジュールで生成できなかった場合、若しくは、メモリカード１８からファイルの実体を取得できなかった場合は、ＨＴＴＰのエラーコードをＰＣ２０へ返信する点が異なる。
【０１４０】
ここで、図７（ａ）を参照して、第２実施形態において、「ｇｅｔ」コマンドで指定されたファイルをＰＣ２０へ転送する際にＨＴＴＰのヘッダ領域に付加される命令の内容について説明する。図７(ａ)は、このＨＴＴＰのヘッダ領域の内容を示した図である。
【０１４１】
図７(ａ)のように、ＨＴＴＰのヘッダ領域には、「Ｃａｃｈｅ−Ｃｏｎｔｒｏｌ：ｎｏ−ｃｈａｃｈｅ」と、「Ｐｒａｇｍａ：ｎｏ−ｃｈａｃｈｅ」という２つのＨＴＴＰヘッダが付加される。これらはともに、ＷＷＷブラウザ２４ａに対して、ファイルのキャッシュを行わないよう命令するためのＨＴＴＰヘッダである。なお、「Ｃａｃｈｅ−Ｃｏｎｔｒｏｌ：ｎｏ−ｃｈａｃｈｅ」は、ＨＴＴＰの第１．１版に対応したＨＴＴＰヘッダであり、「Ｐｒａｇｍａ：ｎｏ−ｃｈａｃｈｅ」は、ＨＴＴＰの第１．０版に対応したＨＴＴＰヘッダである。ＷＷＷブラウザ２４ａのサポートするＨＴＴＰの版がどちらであっても対応できるように、これら２つのＨＴＴＰヘッダを付加する。
【０１４２】
図１に戻って、説明を続ける。第２実施形態のインデックスファイル生成処理モジュール１２ｃは、第１実施形態のインデックスファイル生成処理モジュール１２ｃと同様、インデックスファイルを生成する処理をＣＰＵ１１に実行させるためのプログラムであり、第２実施形態のｇｅｔコマンド処理モジュール１２ｂと連動するモジュールである。ＣＰＵ１１は、第２実施形態のｇｅｔコマンド処理モジュール１２ｂを実行中に「ｇｅｔ」コマンドで指定されたファイルがインデックスファイルであることを判断した場合に、インデックスファイル生成処理モジュール１２ｃの実行を開始する。そして、インデックスファイル記憶領域１３ｃに、生成したインデックスファイルを記憶すると、このモジュールの実行を終了する。
【０１４３】
ここで、第２実施形態のインデックスファイル生成処理モジュール１２ｃにおいて、第１実施形態のインデックスファイル生成処理モジュール１２ｃと異なる点は、第２実施形態では、各ファイルの名称には対応するファイルの実体へのリンクを直接設定し、各サブディレクトリの名称には対応するサブディレクトリに存在する（実際には存在するとして取り扱う）インデックスファイルへのリンクを直接設定したインデックスファイルを生成する点である。
【０１４４】
このように、第２実施形態ではダミーファイルが不要であるので、メモリカード１８にダミーファイルを保存する領域は不要である。
【０１４５】
次に、第２実施形態のＰＣ２０について、第１実施形態のＰＣ２０と異なる点を説明する。第１実施形態のＷＷＷブラウザ２４ａは、ＦＴＰに従ってリンク先のサーバと接続したが、第２実施形態のＷＷＷブラウザ２４ａは、ＨＴＴＰに従ってリンク先のサーバと接続する。すなわち、第２実施形態のＷＷＷブラウザ２４ａは、表示ファイル中に設定されたリンクが選択されると、ＨＴＴＰに従って、そのリンクで示されたパスに存在するファイルの転送命令（「ｇｅｔ」コマンド）を送信し、その転送命令に応じて返信されるファイル、若しくはエラーコードを受信する。
【０１４６】
メモリカードアクセス指示ファイル２４ｃは、ＷＷＷブラウザ２４ａに対し、ＨＴＴＰによってメモリカード１８のルートディレクトリの「＿ｉｎｄｅｘ．ｈｔｍｌ」にアクセスするよう指示する指示情報が記載されたファイルである。ユーザからこのメモリカードアクセス指示ファイル２４ｃが選択されると、ＷＷＷブラウザ２４ａが起動され、ＷＷＷブラウザ２４ａは、ＨＴＴＰに従って、「＿ｉｎｄｅｘ．ｈｔｍｌ」の転送命令をカードリーダ１０へ送信する。
【０１４７】
次に、図７（ｂ）を参照して、第２実施形態におけるｇｅｔコマンド処理モジュール１２ｂの処理フローについて説明する。なお、上述した第１実施形態と同一の部分には同一の符号を付して、その説明を省略する。
【０１４８】
この処理において、Ｓ４１１、Ｓ４１３、Ｓ４１４の処理は、上述した第１実施形態のｇｅｔコマンド処理モジュール１２ｂ（図４（ｂ）参照）と同様の処理を行い、Ｓ４１１の処理により確認した結果、「ｇｅｔ」コマンドで指定されたファイル名の末尾が「＿ｉｎｄｅｘ．ｈｔｍｌ」と一致する場合は（Ｓ４１１：Ｙｅｓ）、指定されたファイルがインデックスファイルであるので、第２実施形態のインデックスファイル生成処理モジュール１２ｃを実行する（Ｓ７１１）。これにより、ファイルには対応するファイルへのリンクが直接設定され、サブディレクトリには、対応するサブディレクトリに存在するインデックスファイルへのリンクが直接設定されたインデックスファイルが生成される。Ｓ７１１の処理の後、Ｓ４１４へ移行する。
【０１４９】
また、Ｓ４１４の処理により確認した結果、指定されたファイルが生成又は取得できた場合は（Ｓ４１４：Ｙｅｓ）、ＨＴＴＰのヘッダ領域に「ファイルのキャッシュを行わない」というＷＷＷブラウザ２４ａに対する命令を付加して、ＨＴＴＰの「ＯＫ」コードと「ｇｅｔ」コマンドで指定されたファイルとをＰＣ２０に対して返信し（Ｓ７１２）、このモジュールの実行を終了する。これにより、ＷＷＷブラウザ２４ａは、「ｇｅｔ」コマンドで指定したファイルを受信した際に、このファイルをキャッシュに記憶しない。
【０１５０】
一方、Ｓ４１４の処理により確認した結果、指定されたファイルが生成又は取得できなかった場合は（Ｓ４１４：Ｎｏ）、ＨＴＴＰのエラーコードをＰＣ２０に対して返信し（Ｓ７１３）、このモジュールの実行を終了する。これにより、ＰＣ２０のユーザに対して、「ｇｅｔ」コマンドで指定したファイルが存在しないことを知らせることができる。
【０１５１】
次に、図８を参照して、第２実施形態のインデックスファイル生成処理モジュールの処理フローについて説明する。なお、上述した第１実施形態と同一の部分には同一の符号を付して、その説明を省略する。
【０１５２】
この処理において、Ｓ５００〜Ｓ５０５、Ｓ５０７、Ｓ５０９、及びＳ５１０の処理は、上述した第１実施形態のインデックスファイル生成処理モジュール（図５参照）と同様の処理を行う。そして、Ｓ５０５の処理の後、指定ディレクトリにある各サブディレクトリのパスにおいて、それぞれ最後に「／＿ｉｎｄｅｘ．ｈｔｍｌ」を付加して、これを各々のサブディレクトリの新たなパスとする（Ｓ８０１）。これにより、各々のサブディレクトリのパスを、そのサブディレクトリに存在する（実際には、存在すると取り扱う）インデックスファイルのパスに置き換える。Ｓ８０１の処理の後、Ｓ５０７へ移行する。
【０１５３】
そして、Ｓ５０７の処理の後、指定ディレクトリにあるファイル及びサブディレクトリの各々の名称に対し、各々のファイル及びサブディレクトリのパスと、サムネイルを生成したものについてはサムネイルのパスとをそれぞれ対応付けて、ファイル・ディレクトリ記憶領域１３ａに記憶し（Ｓ８０２）、Ｓ５０９へ移行する。
【０１５４】
そして、Ｓ５０９の処理で確認した結果、親ディレクトリに存在する全てのサブディレクトリについて、ファイル及びサブディレクトリの存在の有無を調べたと判断した場合（Ｓ５０９：Ｙｅｓ）、ファイル・ディレクトリ記憶領域１３ａに記憶された情報を基に、インデックスファイルを生成する（Ｓ８０２）。すなわち、Ｓ８０２では、ファイル・ディレクトリ記憶領域１３ａに記憶されたファイル及びサブディレクトリの各々の名称に、各々のファイル若しくはサブディレクトリのインデックスファイルへの直接的なリンクを設定し、また、サムネイルを生成したファイルに対し、各々のファイルの名称に対応付けてそれぞれのサムネイルを貼付した、インデックスファイルを生成する。そして、生成されたインデックスファイルをインデックスファイル記憶領域１３ｃに記憶した後、このインデックスファイル生成処理モジュール１２ｃを終了する。
【０１５５】
これにより、ＷＷＷブラウザ２４ａに表示されたインデックスファイルから、ユーザがマウス２７によってファイル若しくはサブディレクトリの名称をクリックすると、ダミーファイルを読み出すことなく、対応するファイル、若しくは、対応するサブディレクトリのインデックスファイルの転送命令をカードリーダ１０に対して送信する。従って、第１実施形態と比較して、所望のファイル若しくはサブディレクトリへ素早くアクセスすることができる。
【０１５６】
次に、図９を参照して、第２実施形態のファイル転送システム１の動作について説明する。図９は、第２実施形態におけるファイル転送システム１の動作の順序を示すシーケンスチャートである。なお、上述した第１実施形態と同一の部分には同一の符号を付して、その説明を省略する。
【０１５７】
図９に示すように、第２実施形態のファイル転送システム１では、まず、ＰＣ２０のユーザ７０が、デスクトップ環境の表示画面から、メモリカードアクセス指示ファイル２４ｃを選択すると、ＣＰＵ２１がＷＷＷブラウザ２４ａを起動し、ＷＷＷブラウザ２４ａに対してメモリカードアクセス指示ファイル２４ｃが選択されたことを通知する（Ｓ９０１）。
【０１５８】
そして、ＷＷＷブラウザ２４ａは、メモリカードアクセス指示ファイル２４ｃの内容に従って、メモリカード１８のルートディレクトリのインデックスファイル「＿ｉｎｄｅｘ．ｈｔｍｌ」にアクセスするために、まずキャッシュ２４ｂに対して「＿ｉｎｄｅｘ．ｈｔｍｌ」の転送命令を送信する（Ｓ９０２）。
【０１５９】
しかし、後述する理由により、キャッシュ２４ｂには「＿ｉｎｄｅｘ．ｈｔｍｌ」が存在しないので、キャッシュ２４ｂはＷＷＷブラウザ２４ａに対し、「＿ｉｎｄｅｘ．ｈｔｍｌ」の転送不可通知を送信する（Ｓ９０３）。
【０１６０】
続く、Ｓ６０５〜Ｓ６０８では、上述した第１実施形態のファイル転送システム１と同様の処理が行われる。ただし、Ｓ６０７において、カードリーダ１０はＷＷＷブラウザ２４ａに対してＨＴＴＰのヘッダ領域に記載された「ファイルのキャッシュを行わない」という命令も合わせて送信するので、ＷＷＷブラウザ２４ａは受信した「＿ｉｎｄｅｘ．ｈｔｍｌ」をキャッシュ２４ｂに保存しない。よって、以後、ＷＷＷブラウザ２４ａが「＿ｉｎｄｅｘ．ｈｔｍｌ」にアクセスする場合、キャッシュ２４ｂに「＿ｉｎｄｅｘ．ｈｔｍｌ」が存在しないので、必ず、カードリーダ１０に対して「＿ｉｎｄｅｘ．ｈｔｍｌ」の転送命令（「ｇｅｔ」コマンド）を送信する。従って、ＷＷＷブラウザ２４ａは最新の「＿ｉｎｄｅｘ．ｈｔｍｌ」をカードリーダ１０から受信することができる。
【０１６１】
次に、Ｓ６１０、Ｓ６１７〜Ｓ６１９、Ｓ６２１、Ｓ６２５〜Ｓ６２８の処理も、上述した第１実施形態のファイル転送システム１と同様の処理が行われる。ただし、Ｓ６１８及びＳ６２７において、カードリーダ１０はＷＷＷブラウザ２４ａに対してＨＴＴＰのヘッダ領域に記載された「ファイルのキャッシュを行わない」という命令も合わせて送信するので、ＷＷＷブラウザ２４ａは受信したファイル「ｔｅｍｐ．ｔｘｔ」やインデックスファイル「Ｐｈｏｔｏ／＿ｉｎｄｅｘ．ｈｔｍｌ」をキャッシュ２４ｂに保存しない。よって、ＷＷＷブラウザ２４ａがテキスト「ｔｅｍｐ．ｔｘｔ」にアクセスする場合、キャッシュ２４ｂに対して「ｔｅｍｐ．ｔｘｔ」の転送命令を要求しても（Ｓ９０４）、キャッシュ２４ｂは必ず「ｔｅｍｐ．ｔｘｔ」の転送不可通知をＷＷＷブラウザ２４ａに送信する（Ｓ９０５）。これにより、ＷＷＷブラウザ２４ａは必ずカードリーダ１０に対して「ｔｅｍｐ．ｔｘｔ」の転送命令（「ｇｅｔ」コマンド）を送信する（Ｓ６１７）。
【０１６２】
また、ＷＷＷブラウザ２４ａが「Ｐｈｏｔｏ／＿ｉｎｄｅｘ．ｈｔｍｌ」にアクセスする場合も同様に、キャッシュ２４ｂに対して「Ｐｈｏｔｏ／＿ｉｎｄｅｘ．ｈｔｍｌ」の転送命令を要求しても（Ｓ９０６）、キャッシュ２４ｂは必ず「Ｐｈｏｔｏ／＿ｉｎｄｅｘ．ｈｔｍｌ」の転送不可通知をＷＷＷブラウザ２４ａに送信する（Ｓ９０７）。これにより、ＷＷＷブラウザ２４ａは必ずカードリーダ１０に対して「Ｐｈｏｔｏ／＿ｉｎｄｅｘ．ｈｔｍｌ」の転送命令（「ｇｅｔ」コマンド）を送信する（Ｓ６２５）。従って、ＷＷＷブラウザ２４ａは最新の「ｔｅｍｐ．ｔｘｔ」や「Ｐｈｏｔｏ／＿ｉｎｄｅｘ．ｈｔｍｌ」をカードリーダ１０から受信することができる。
【０１６３】
以上説明したように、第２実施形態のファイル転送システム１では、カードリーダ１０からＰＣ２０のＷＷＷブラウザ２４ａへファイルを送信する場合に、カードリーダ１０は、ＨＴＴＰのヘッダ領域に「ファイルのキャッシュを行わない」というＷＷＷブラウザ２４ａに対する命令を付加し、その命令を送信するファイルに先駆けて送信する。これにより、ＷＷＷブラウザ２４ａからカードリーダ１８に格納されたファイルに繰り返しアクセスが行われる場合でも、そのファイルがキャッシュに記憶されないので、ＰＣ１０はメモリカード１８に格納されたファイルへ常に直接アクセスすることができる。よって、ＰＣ２０からメモリカード１８に格納された最新のファイルへアクセスさせることができる。
【０１６４】
次に、図１０から図１３を参照して、第３実施形態におけるファイル転送システム１について説明する。上述した第１実施形態のファイル転送システム１において、カードリーダ１０は、所定のディレクトリと、所定のディレクトリにあるサブディレクトリとに存在するファイル及びサブディレクトリの各々についてダミーファイル１８ａを生成し、各々のファイル及びサブディレクトリの名称に、対応するダミーファイル１８ａへのリンクを設定してインデックスファイルを生成した。これに対し、第３実施形態のファイル転送システム１では、カードリーダ１０が、インデックスファイルを生成する時の日時分秒Ｙを計時回路１６から取得する。そして、ファイルとサブディレクトリにあるインデックスファイルとの各々のパスに、日時分秒Ｙを含む文字列「＿ｔｅｍｐＹ」を付加したものを、各々の新しいパスとする。そして、各ファイル及びサブディレクトリの名称に、その新しいパスへのリンクを各々設定したインデックスファイルを生成する。
【０１６５】
図１０は、第３実施形態におけるファイル転送システム１の電気的構成を示すブロック図である。なお、上述した第１実施形態と同一の部分には同一の符号を付して、その説明を省略する。
【０１６６】
この第３実施形態のカードリーダ１０において、ＲＯＭ１２には、第１実施形態のｇｅｔコマンド処理モジュール１２ｂとインデックスファイル生成処理モジュール１２ｃのかわりに、ｇｅｔコマンド処理モジュール１２ｄとインデックスファイル生成処理モジュール１２ｅが記憶されている。
【０１６７】
ｇｅｔコマンド処理モジュール１２ｄは、ＦＴＰの「ｇｅｔ」コマンドに対する処理をＣＰＵ１１に実行させるためのプログラムであり、第１実施形態のｇｅｔコマンド処理モジュール１２ｂと同様、ＦＴＰサーバプログラム１２ａと連動するモジュールである。そして、ＣＰＵ１１は、ＦＴＰサーバプログラムの実行中にＰＣ２０から「ｇｅｔ」コマンドを受信すると、ＣＰＵ１１はこのｇｅｔコマンド処理モジュール１２ｄの実行を開始する。そして、「ｇｅｔ」コマンドで指定されたファイルをＰＣ２０に返信するか、「ＮＧ」コードを返信すると、このモジュールの実行を終了する。
【０１６８】
この第３実施形態のｇｅｔコマンド処理モジュール１２ｄにおいて、第１実施形態のｇｅｔコマンド処理モジュール１２ｂと異なる点は、まず、「ｇｅｔ」コマンドで指定されたファイルの末尾が「＿ｉｎｄｅｘ＿ｔｅｍｐＮ．ｈｔｍｌ」（Ｎは任意の値）である場合に、指定ファイルがインデックスファイルと判断し、そうでない場合は、メモリカード１８に格納されたファイルと判断する点である。これにより、インデックスファイルのパス名に、日時分秒を含む文字列「＿ｔｅｍｐＮ．ｈｔｍｌ」が付加されていた場合であっても、それをインデックスファイルとして認識することができる。
【０１６９】
また、「ｇｅｔ」コマンドで指定されたファイルがインデックスファイルであった場合、後述する第３実施形態のインデックスファイル生成処理モジュール１２ｅを実行する。更に、「ｇｅｔ」コマンドで指定されたファイルがインデックスファイルでない場合に、指定ファイルのパスに、上述の日時分秒を含む文字列「＿ｔｅｍｐＮ」が含まれるとき、指定ファイル名のパスからその日時分秒を含む文字列「＿ｔｅｍｐＮ」を削除したものを、正しい指定ファイルのパスとして認識する。これにより、インデックスファイル中に、日時分秒を含む文字列を付加したパスによって各々のファイルへのリンクを設定した場合であっても、所望のファイルに正しくアクセスすることが可能となる。
【０１７０】
インデックスファイル生成処理モジュール１２ｅは、第１実施形態のインデックスファイル生成処理モジュール１２ｃと同様、インデックスファイルを生成する処理をＣＰＵ１１に実行させるためのプログラムであり、第３実施形態のｇｅｔコマンド処理モジュール１２ｄと連動するモジュールである。そして、ＣＰＵ１１は、第３実施形態のｇｅｔコマンド処理モジュール１２ｄを実行中に「ｇｅｔ」コマンドで指定されたファイルがインデックスファイルであることを判断した場合に、インデックスファイル生成処理モジュール１２ｅの実行を開始する。そして、インデックスファイル記憶領域１３ｃに生成したインデックスファイルを記憶すると、このモジュールの実行を終了する。
【０１７１】
第３実施形態のインデックスファイル生成処理モジュール１２ｅにおいて、第１実施形態のインデックスファイル生成モジュール１２ｃと異なる点は、インデックスファイルを生成する時の日時分秒Ｙを計時回路１６から取得し、ＲＡＭ１３の日時分秒変数１３ｄに格納する。そして、所定のディレクトリと、所定のディレクトリにあるサブディレクトリとに存在するファイル及びサブディレクトリのうち、各ファイルのパスについて、各々のファイル名に日時分秒Ｙを含む文字列「＿ｔｅｍｐＹ」を挿入したものを新たなパスとする。また、各サブディレクトリのパスについて、それぞれ最後に「／＿ｉｎｄｅｘ＿ｔｅｍｐＹ．ｈｔｍｌ」を付加したものを新たなパスとする。これにより、サブディレクトリのパスは、日時分秒Ｙを含む文字列が挿入されたサブディレクトリのインデックスファイルのパスに変更される。そして、各ファイル及びサブディレクトリの名称に対し、各々の新たなパスによって示されるファイルへのリンクを設定したインデックスファイルを生成する。
【０１７２】
また、第３実施形態ではダミーファイルが不要である。従って、メモリカード１８にダミーファイルを保存する領域は不要である。
【０１７３】
次に、ＲＡＭ１３には日時分秒変数１３ｄが設けられている。日時分秒変数１３ｄは、ＣＰＵ１１がファイル生成処理モジュールを実行する際に使用されるもので、インデックスファイルを生成する毎に計時回路１６から取得された日時分秒Ｙを格納するためのメモリ領域である。そして、この日時分秒変数１３ｄに格納された日時分秒Ｙは、ファイル及びサブディレクトリのパスに日時分秒Ｙを含む文字列「＿ｔｅｍｐＹ」を付加する際に、使用される。この日時分秒変数１３ｄは、インデックスファイル生成処理モジュール１２ｅの実行が終了するとともに、解放される。
【０１７４】
一方、ＰＣ２０のＲＡＭ２３には日時分秒変数２３ａが設けられている。日時分秒変数２３ａは、ＣＰＵ２１が後述のメモリカードアクセス指示ファイル２４ｄを実行する際に使用されるもので、メモリカードアクセス指示ファイル２４ｄが実行される毎に計時回路２９から取得された日時分秒Ｘを格納するためのメモリ領域である。そして、この日時分秒変数２３ａに格納された日時分秒Ｘは、メモリカード１８のルートディレクトリのインデックスファイルのパスに対して、日時分秒Ｘを含む文字列「＿ｔｅｍｐＸ」を付加する際に、使用される。この日時分秒変数２３ａは、メモリカードアクセス指示ファイル２４ｄの実行が終了するとともに、解放される。
【０１７５】
また、ハードディスク２４には、第１実施形態のメモリカードアクセス指示ファイル２４ｃにかえて、メモリカードアクセス指示ファイル２４ｄが格納されている。このメモリカードアクセス指示ファイル２４ｄは、ＣＰＵ２１によって実行されるファイルで、ＷＷＷブラウザ２４ａを起動して、ＦＴＰに従い、メモリカード１８のルートディレクトリのインデックスファイルにアクセスするよう指示する指示情報が記載されたファイルである。
【０１７６】
このメモリカードアクセス指示ファイル２４ｄは、ＯＳのデスクトップ環境上に表示され、キーボード２６又はマウス２７によってユーザから選択することが可能となっている。このメモリカードアクセス指示ファイル２４ｄが選択されると、ＣＰＵ２１はその時点における日時分秒Ｘを計時回路２９から取得し、メモリカード１８のルートディレクトリのインデックスファイルのパス名に、日時分秒を含む文字列「＿ｔｅｍｐＸ」を付加する。そして、その文字列が付加されたパスで示されるファイルを指定ファイルとしてＦＴＰによる転送命令（「ｇｅｔ」コマンド）を送信するために、ＷＷＷブラウザ２４ａを起動する。
【０１７７】
次に、図１１（ａ）を参照して、ＰＣ２０のＣＰＵ２１で実行される第３実施形態のメモリカードアクセス指示ファイル２４ｄの処理フローについて説明する。図１１（ａ）は、このメモリカードアクセス指示ファイル２４ｄのフローチャートである。このメモリカードアクセス指示ファイル２４ｄは、ユーザからキーボード２６又はマウス２７によって選択されると、ＣＰＵ２１により実行が開始される。
【０１７８】
図１１（ａ）に示すように、この処理では、まず、現在の日時分秒Ｘを計時回路２９０から取得し、日時分秒変数２３ａに格納する（Ｓ１１０１）。そして、ＵＲＬ（Ｕｎｉｆｏｒｍ  Ｒｅｓｏｕｒｃｅ  Ｌｏｃａｔｏｒ）として、「ｆｔｐ：／／ａａａ／＿ｉｎｄｅｘ＿ｔｅｍｐＸ．ｈｔｍｌ」を指定してＷＷＷブラウザを起動する（Ｓ１１０２）。すわなち、メモリカード１８のルートディレクトリのインデックスファイルのパス名「／／ａａａ／＿ｉｎｄｅｘ．ｈｔｍｌ」に、日時分秒変数２３ａに格納された日時分秒Ｘを含む文字列「＿ｔｅｍｐＸ」を付加し、その文字列が付加されたパス「／／ａａａ／＿ｉｎｄｅｘ＿ｔｅｍｐＸ．ｈｔｍｌ」で示されるファイルを指定ファイルとしてＦＴＰによる転送命令（「ｇｅｔ」コマンド）を送信するように、ＷＷＷブラウザ２４ａに対し指示する。
【０１７９】
これにより、ＷＷＷブラウザ２４ａは、ＦＴＰに従って、メモリカード１８のルートディレクトリのインデックスファイル「／／ａａａ／＿ｉｎｄｅｘ＿ｔｅｍｐＸ．ｈｔｍｌ」の転送命令をカードリーダ１０に対して送信する。ここで、日時分秒Ｘは、メモリカードアクセス指示ファイル２４ｄが実行される毎に、計時回路２９から取得されるので、毎回異なる値となる。よって、ＷＷＷブラウザ２４ａは、毎回異なるファイルの転送命令をカードリーダ１０に対して行っていると認識する。従って、ＷＷＷブラウザ２４ａが、ルートディレクトリのインデックスファイルに対して繰り返しアクセスする場合でも、キャッシュ２４ｂのデータを参照させないようにすることができる。
【０１８０】
次に、図１１（ｂ）を参照して、カードリーダ１０のＣＰＵ１１で実行される、第３実施形態のｇｅｔコマンド処理モジュール１２ｄの処理フローについて説明する。なお、上述した第１実施形態のｇｅｔコマンド処理モジュール１２ｂと同一の部分には同一の符号を付して、その説明を省略する。
【０１８１】
この処理において、まず、「ｇｅｔ」コマンドで指定されたファイルの末尾が「＿ｉｎｄｅｘ＿ｔｅｍｐＮ．ｈｔｍｌ」（Ｎは任意の値）と一致するかを確認し（Ｓ１１1０）、一致する場合は（Ｓ１１１０：Ｙｅｓ）、指定ファイルがインデックスファイルと判断して、後述のインデックスファイル生成処理モジュール１２ｅを実行する（Ｓ１１１３）。これにより、インデックスファイルのパス名に、日時分秒を含む文字列「＿ｔｅｍｐＮ」が付加されていた場合であっても、それをインデックスファイルとして認識して、インデックスファイルを生成することができる。そして、Ｓ１１１３の処理の後、Ｓ４１４の処理へ移行する。なお、Ｓ４１３〜Ｓ４１６の処理は、上述した第１実施形態のｇｅｔコマンド処理モジュール１２ｂ（図４（ｂ）参照）と同様の処理を行う。
【０１８２】
一方、Ｓ１１１０の処理で、一致しないと確認した場合（Ｓ１１１０：Ｎｏ）は、指定ファイルがメモリカード１８に格納されたファイルであると判断してＳ１１１１の処理へ移行する。
【０１８３】
Ｓ１１１１では、指定ファイルのパスに日時分秒Ｎを含む文字列「＿ｔｅｍｐＮ」（Ｎは任意の数）が含まれているかを確認する。そして、含まれている場合（Ｓ１１１１：Ｙｅｓ）、指定ファイルのパスからその日時分秒Ｎを含む文字列「＿ｔｅｍｐＮ」を削除したパスを、正しい指定ファイルのパスとして認識し（Ｓ１１１２）、Ｓ４１３の処理へ移行する。これにより、指定ファイルのパスに日時分秒Ｎを含む文字列「＿ｔｅｍｐＮ」が付加されている場合でも、正しい指定ファイルのパスを取得することができる。
【０１８４】
また、Ｓ１１１１の処理で確認した結果、指定ファイルのパスに日時分秒Ｎを含む文字列「＿ｔｅｍｐＮ」が含まれていない場合（Ｓ１１１１：Ｎｏ）、Ｓ４１３の処理へ移行する。これにより、「ｇｅｔ」コマンドで指定されたファイルを、メモリカード１８から取得することが可能である。
【０１８５】
次に、図１２を参照して、カードリーダ１０のＣＰＵ１１で実行される、第３実施形態のインデックスファイル生成処理モジュール１２ｅの処理フローについて説明する。なお、上述した第１実施形態のｇｅｔコマンド処理モジュール１２ｃと同一の部分には同一の符号を付して、その説明を省略する。
【０１８６】
Ｓ５００〜Ｓ５０５、Ｓ５０７、Ｓ５０９、及びＳ５１０の処理は、上述した第１実施形態のｇｅｔコマンド処理モジュール１２ｃ（図５参照）と同様の処理を行う。Ｓ５０５の処理の後、この処理では、計時回路１６から、現在の日時分秒Ｙを取得し、日時分秒変数１３ｄに記憶する（Ｓ１２０１）。そして、指定ディレクトリにある各ファイルのパスにおいて、各々のファイル名に日時分秒Ｙを含む文字列「＿ｔｅｍｐＹ」を挿入したものを新たなパスとする（Ｓ１２０２）。続いて、指定ディレクトリにある各サブディレクトリのパスにおいて、それぞれ最後に「／＿ｉｎｄｅｘ＿ｔｅｍｐＹ．ｈｔｍｌ」を付加し、それを新たなパスとする（Ｓ１２０３）。これにより、サブディレクトリのパスは、日時分秒Ｙを含む文字列「＿ｔｅｍｐＹ」が挿入されたサブディレクトリのインデックスファイルのパスに変更される。
【０１８７】
Ｓ１２０３の処理の後、Ｓ５０７へ移行する。そして、Ｓ５０７の処理の後、指定ディレクトリにあるファイル及びサブディレクトリの各々の名称に対し、各々のファイル及びサブディレクトリの新たなパスと、サムネイルを生成したものについてはサムネイルのパスとをそれぞれ対応付けて、ファイル・ディレクトリ記憶領域１３ａに記憶し（Ｓ１２０４）、Ｓ５０９の処理へ移行する。
【０１８８】
そして、Ｓ５０９の処理で確認した結果、親ディレクトリに存在する全てのサブディレクトリについて、ファイル及びサブディレクトリの存在の有無を調べたと判断した場合（Ｓ５０９：Ｙｅｓ）、ファイル・ディレクトリ記憶領域１３ａに記憶された情報を基に、インデックスファイルを生成する（Ｓ１２０５）。すなわち、Ｓ１２０５では、ファイル・ディレクトリ記憶領域１３ａに記憶されたファイル及びサブディレクトリの各々の名称に、各々の新たなパスで示されるファイルへのリンクを設定し、また、サムネイルを生成したファイルに対し、各々のファイルの名称に対応付けてそれぞれのサムネイルを貼付した、インデックスファイルを生成する。そして、生成されたインデックスファイルをインデックスファイル記憶領域１３ｃに記憶した後、このインデックスファイル生成処理モジュール１２ｃを終了する。
【０１８９】
このように、日時分秒Ｙは、指定ディレクトリに対して、インデックスファイルの生成に必要なデータの準備を行う毎に計時回路１６から取得されるので、毎回異なる値となる。よって、インデックスファイルが生成される毎に、各ファイル及びサブディレクトリに設定されたリンク先のパスは異なるものになる。よって、異なるタイミングで生成されたインデックスファイルにより、同一のファイルやサブディレクトリがＷＷＷブラウザ２４ａから選択されても、リンク先のパスが異なるので、そのファイルやサブディレクトリについて保存されたキャッシュのデータを参照させないようにすることができる。
【０１９０】
次に、図１３を参照して、第３実施形態のファイル転送システム１の動作について説明する。図１３は、第３実施形態におけるファイル転送システム１の動作の順序を示すシーケンスチャートである。なお、上述した第１実施形態と同一の部分には同一の符号を付して、その説明を省略する。
【０１９１】
図１３に示すように、第３実施形態のファイル転送システム１では、まず、ＰＣ２０のユーザ７０が、デスクトップ環境の表示画面から、メモリカードアクセス指示ファイル２４ｃを選択すると、ＣＰＵ２１は、計時回路２９から、現在の日時分秒「Ａ」を取得するとともに、ＷＷＷブラウザ２４ａを起動し、メモリカード１８のルートディレクトリのインデックスファイル「＿ｉｎｄｅｘ＿ｔｅｍｐＡ．ｈｔｍｌ」の転送命令（「ｇｅｔ」コマンド）をＦＴＰによって送信するよう、ＷＷＷブラウザ２４ａに通知する（Ｓ１３０１）。
【０１９２】
これを受けて、ＷＷＷブラウザ２４ａは、キャッシュ２４ｂに対しインデックスファイル「＿ｉｎｄｅｘ＿ｔｅｍｐＡ．ｈｔｍｌ」の転送命令を送信する（Ｓ１３０２）。しかし、このインデックスファイルのパスには、日時秒数Ａを含んでおり、同じパスのファイルはキャッシュ２４ａに存在しないので、キャッシュ２４ｂからＷＷＷブラウザ２４ａに対して「＿ｉｎｄｅｘ＿ｔｅｍｐＡ．ｈｔｍｌ」の転送不可通知が送信される（Ｓ１３０３）。これにより、ＷＷＷブラウザ２４ａは、「＿ｉｎｄｅｘ＿ｔｅｍｐＡ．ｈｔｍｌ」の転送命令（「ｇｅｔ」コマンド）をカードリーダ１０に対して送信する（Ｓ１３０４）。従って、過去に、ルートディレクトリのインデックスファイルがキャッシュ２４ｂに記憶された場合でも、カードリーダ１０に対して、最新のインデックスファイルを生成させることができる。
【０１９３】
続いて、カードリーダ１０では、インデックスファイル生成処理モジュール１２ｅによって、ルートディレクトリに存在するファイル及びサブディレクトリを検出して、「＿ｉｎｄｅｘ＿ｔｅｍｐＡ．ｈｔｍｌ」を生成し（Ｓ１３０５）、これをＷＷＷブラウザ２４ａに返信する（Ｓ１３０６）。そして、第１実施形態と同様に、ＷＷＷブラウザ２４ａは、受信したルートディレクトリのインデックスファイルをユーザ７０に対し表示する（Ｓ６０８）。また、ＷＷＷブラウザ２４ａに表示された「＿ｉｎｄｅｘ＿ｔｅｍｐＡ．ｈｔｍｌ」は、キャッシュ２４ｂに書き込まれる（Ｓ１３０７）。しかし、上述の通り、ルートディレクトリのインデックスファイルのパスは、日時分秒によってメモリカードアクセス指示ファイルが選択される度に変化するので、以後、キャッシュ２４ｂに書き込まれた「＿ｉｎｄｅｘ＿ｔｅｍｐＡ．ｈｔｍｌ」は読み出されない。
【０１９４】
続いて、ユーザ７０が、ＷＷＷブラウザ２４ａに表示されたインデックスファイルからファイルの名称「ｔｅｍｐ．ｔｘｔ」を選択すると（Ｓ６１０）、ＷＷＷブラウザ２４ａは、ファイルの名称「ｔｅｍｐ．ｔｘｔ」に対して設定されたリンク「ｔｅｍｐ＿ｔｅｍｐＢ．ｔｘｔ」を基に、ファイル「ｔｅｍｐ＿ｔｅｍｐＢ．ｔｘｔ」の転送命令を、キャッシュ２４ｂに対して送信する（Ｓ１３０８）。ここで、「ｔｅｍｐＢ」は、Ｓ１３０５の処理でカードリーダ１０がインデックスファイルを生成するときに、計時回路１６から取得した日時分秒「Ｂ」を含む文字列であり、インデックスファイルを生成する度に変化する。よって、キャッシュ２４ｂには「ｔｅｍｐ＿ｔｅｍｐＢ．ｔｘｔ」が存在しないため、キャッシュ２４ｂからＷＷＷブラウザ２４ａに対して「ｔｅｍｐ＿ｔｅｍｐＢ．ｔｘｔ」の転送不可通知が送信される（Ｓ１３０９）。これにより、ＷＷＷブラウザ２４ａは、カードリーダ１０に対し、「ｔｅｍｐ＿ｔｅｍｐＢ．ｔｘｔ」の転送命令（「ｇｅｔ」コマンド）を送信する（Ｓ１３１０）。
【０１９５】
続いて、カードリーダ１０は、ｇｅｔコマンド処理モジュール１２ｄによって、メモリカード１８に記憶された「ｔｅｍｐ．ｔｘｔ」を取得し、これを「ｔｅｍｐ＿ｔｅｍｐＢ．ｔｘｔ」として、ＷＷＷブラウザ２４ａに転送する（Ｓ１３１１）。そして、ＷＷＷブラウザ２４ａは、第１実施形態と同様、「ｔｅｍｐ．ｔｘｔ」をユーザ７０に対して表示する（Ｓ６１９）。これにより、カードリーダ１０から、最新の「ｔｅｍｐ．ｔｘｔ」を読み出しが完了する。また、ＷＷＷブラウザ２４ａは、受信した「ｔｅｍｐ．ｔｘｔ」を「ｔｅｍｐ＿ｔｅｍｐＢ．ｔｘｔ」としてキャッシュ２４ｂに書き込む（Ｓ６１９）。
【０１９６】
しかし、上述の通り、「ｔｅｍｐ＿ｔｅｍｐＢ．ｔｘｔ」の中の文字列「ｔｅｍｐＢ」は、インデックスファイルが生成される度に変化するので、新たにインデックスファイルを生成したのちは、キャッシュ２４ｂに書き込まれた「ｔｅｍｐ＿ｔｅｍｐＢ．ｈｔｍｌ」は読み出されない。
【０１９７】
なお、ユーザ７０が、ＷＷＷブラウザ２４ａに表示されたインデックスファイルからサブディレクトリの名称「Ｐｈｏｔｏ」を選択した場合の動作は、サブディレクトリの名称「Ｐｈｏｔｏ」に対して設定されたリンクがインデックスファイル「Ｐｈｏｔｏ／＿ｉｎｄｅｘ＿ｔｅｍｐＢ．ｈｔｍｌ」（Ｂは日時分秒）であるほかは、ファイルの名称「ｔｅｍｐ．ｔｘｔ」を選択した場合の動作（Ｓ６１０、Ｓ１３０８〜Ｓ１３１１、Ｓ６１９、及びＳ１３１２）と同様であるので、その図示と説明を省略する。
【０１９８】
以上説明したように、第３実施形態のファイル転送システム１では、カードリーダ１０が、インデックスファイルを生成する時の日時分秒Ｙを計時回路１６から取得し、ファイル及びサブディレクトリにあるインデックスファイルの各々のパスに日時分秒を含む文字列「＿ｔｅｍｐＹ」（Ｙは日時分秒）を付加したものを、各々の新しいパスとする。そして、各ファイル及びサブディレクトリの名称に、その新しいパスで示されたファイル若しくはサブディレクトリのインデックスファイルへのリンクを各々設定したインデックスファイルを生成する。
【０１９９】
これにより、所定のディレクトリのインデックスファイルが繰り返し生成された場合、インデックスファイルを生成する度に取得される日時分秒Ｙによって、それぞれのインデックスファイルにおいて同じファイルやサブディレクトリに対し異なるパスが関連付けられる。よって、ＷＷＷブラウザ２４ａには異なるファイル若しくはサブディレクトリとして認識させることができる。従って、異なるタイミングで生成されたインデックスファイルにより、同一のファイルやサブディレクトリがブラウザから選択されても、そのファイルやサブディレクトリについて保存されたキャッシュのデータを参照させないようにすることができる。
【０２００】
一方、ＷＷＷブラウザ２４ａからの転送命令で指定されたファイルのパスに日時分秒を含む文字列「＿ｔｅｍｐＮ」（Ｎは任意の数）が付加されている場合、カードリーダ１０は、そのパスから文字列「＿ｔｅｍｐＮ」を削除し、その削除したパスを正しいパスとして認識する。これにより、正しいパスによって指定されたファイルがカードリーダ１０からＰＣ２０に送信されるので、ユーザの所望のファイルを正しくＰＣ２０に送信することができる。よって、ＰＣ２０から最新のファイルへ確実にアクセスさせることができる。
【０２０１】
以上、実施形態に基づき本発明を説明したが、本発明は上述した実施形態に何ら限定されるものではなく、本発明の趣旨を逸脱しない範囲内で種々の改良変更が可能であることは容易に推察できるものである。
【０２０２】
例えば、上記実施形態では、各サブディレクトリの名称に対して直接または間接的に設定したリンク先を、サブディレクトリに存在する（実際には存在するものとして取り扱った）インデックスファイルとしたが、サブディレクトリに存在する任意のファイルをリンク先としてもよい。また、サブディレクトリそのものをリンク先としてもよい。この場合、カードリーダ１０でサブディレクトリを指定した転送命令（「ｇｅｔ」コマンド）を受信したときに、カードリーダ１０はサブディレクトリのインデックスファイルを生成して転送してもよいし、サブディレクトリに存在する任意のファイルを転送してもよい。
【０２０３】
また、上記実施形態では、カードリーダ１０は所定のディレクトリのインデックスファイルの転送命令を受信した場合に、その所定のディレクトリについてインデックスファイルを生成するようにしたが、メモリカード１８において、所定のディレクトリに新規ファイル若しくはサブディレクトリが新規作成された場合、又は、その所定のディレクトリからファイル若しくはサブディレクトリが削除された場合に、その所定のディレクトリについてインデックスファイルを生成し、所定の位置に格納してもよい。これにより、インデックスファイルの転送命令を受信したときに、所定のディレクトリに存在するファイル及びサブディレクトリがインデックスファイルに反映されているので、カードリーダ１０は、ＰＣ２０のＷＷＷブラウザ２４ａに対し、メモリカード１８に格納されているファイル及びサブディレクトリの最新の情報を表示させることができる。
【０２０４】
また、上記実施形態において、所定のディレクトリに存在する各々のサブディレクトリについて、各々のサブディレクトリのサイズ若しくはそのサブディレクトリに含まれるファイル及びサブディレクトリの数を取得するサブディレクトリ情報取得手段を設け、サブディレクトリ情報取得手段で取得した各々のサブディレクトリのサイズ若しくはそのサブディレクトリに含まれるファイル及びサブディレクトリの数を、各々のサブディレクトリの名称に対応付けられた設けられたサブディレクトリ情報領域に表示されるようにインデックスファイルを生成するようにしてもよい。これにより、ＷＷＷブラウザ２４ａに表示されたインデックスファイルから、各々のサブディレクトリ情報領域に表示されたサブディレクトリのサイズ若しくはそのサブディレクトリに含まれるファイル及びサブディレクトリの数によって、各サブディレクトリに含まれるファイルの内容を推測させることができる。よって、ユーザに対し、サブディレクトリに所望のファイルが存在するか否かの判断を容易に行わせることができる。
【０２０５】
また、上記実施形態において、サムネイルを生成したファイルについては、ファイルの名称とサムネイルとを表示するようにインデックスファイルを生成したが、サムネイルだけを表示するようにインデックスファイルを生成してもよい。また、サムネイルを表示せずにファイルの名称のみ表示するようにしてもよい。
【０２０６】
また、上記実施形態において生成したインデックスファイルは、所定のディレクトリと、その所定のディレクトリにあるサブディレクトリとに存在するファイル及びサブディレクトリの一覧を表示するものであったが、所定のディレクトリに含まれる全てのサブディレクトリに存在するファイル及びサブディレクトリの一覧を表示するものであってもよい。これにより、１つのインデックスファイルで所定のディレクトリに含まれる全てのファイル及びサブディレクトリを確認することができる。また、所定のディレクトリと所定のディレクトリに含まれる所定階層までのサブディレクトリに存在するファイル及びサブディレクトリの一覧を表示するものであってもよい。この場合、インデックスファイルが所定のディレクトリに含まれる全てのサブディレクトリに存在するファイル及びサブディレクトリの一覧を表示するものである場合と比較して、インデックスファイルの生成にかかる時間を短くすることができる。
【０２０７】
また、上記第１実施形態では、ダミーファイルをメモリカード１８に格納するようにしたが、これをＲＡＭ１３や別のメモリ装置に格納するようにしてもよい。
【０２０８】
また、上記第３実施形態では、ファイル及びサブディレクトリのインデックスファイルのパスに、インデックスファイルを生成する度に計時回路１６から取得した日時分秒を含む文字列を付加したが、これに限らずインデックスファイルを生成する度に変化する情報を付加するようにしてよい。例えば、インデックスファイルを生成する度にカウントアップするカウンタを設け、このカウンタの数含んだ文字列をファイル及びサブディレクトリのインデックスファイルのパスに付加してもよい。
【０２０９】
また、上記実施形態１及び３では、カードリーダ１０とＰＣ２０との間のデータ転送をＦＴＰに従って行う例を示したが、これをＨＴＴＰに従って行ってもよい。この場合、ＦＴＰサーバプログラム１２ａはＨＴＴＰサーバプログラムに置き換えられる。なお、ＨＴＴＰサーバプログラムの処理フローは、図４（ａ）に示したＦＴＰサーバプログラム１２ａの処理フローと同一のものを用いることができる。
【０２１０】
また、上記実施形態では、ＬＡＮを介してカードリーダ１０とＰＣ２０とを接続したが、インターネットを介して接続してもよい。
【０２１１】
また、上記実施形態では、ファイル格納手段としてメモリカード１８を例に説明したが、これに限らず、ハードディスクやＣＤ（Ｃｏｎｐａｃｔ  Ｄｉｓｃ）、ＤＶＤ（Ｄｉｇｉｔａｌ  Ｖｅｒｓａｔａｉｌ  Ｄｉｓｃ）など、ファイルを格納できる手段であればよい。また、サーバ装置はカードリーダ１０に限らず、ファイル格納手段を有したものであればよい。
【図面の簡単な説明】
【０２１２】
【図１】本発明の第１実施形態におけるファイル転送システムの電気的構成を示すブロック図である。
【図２】（ａ）はＷＷＷブラウザによってＬＣＤに表示されたインデックスファイルの表示画面図である、（ｂ）はサブディレクトリ「Ｐｈｏｔｏ」に対して生成されたダミーファイル「Ｐｈｏｔｏ＿ｄｕｍｍｙ．ｈｔｍｌ」の内容を示す図であり、（ｃ）ファイル「ｔｅｍｐ．ｔｘｔ」に対して生成されたダミーファイル「ｔｅｍｐ＿ｔｘｔ＿ｄｕｍｍｙ．ｈｔｍｌ」の内容を示す図である。
【図３】（ａ）はＰＣのＯＳによりＬＣＤに表示されるデスクトップ環境の表示画面図であり、（ｂ）はメモリカードアクセス指示ファイル２４ｃ「ｄｕｍｍｙ．ｈｔｍｌ」の内容を示す図である。
【図４】第１実施形態のカードリーダで実行されるｇｅｔコマンド処理モジュールのフローチャートである。
【図５】第１実施形態のカードリーダで実行されるインデックスファイル生成処理モジュールのフローチャートである。
【図６】第１実施形態のファイル転送システムの動作の順序を示すシーケンスチャートである。
【図７】（ａ）は第２実施形態におけるファイル転送システムにおいて、カードリーダからＰＣにデータ転送される際のＨＴＴＰヘッダの内容を示す図であり、（ｂ）は第２実施形態のカードリーダで実行されるｇｅｔコマンド処理モジュールのフローチャートである。
【図８】第２実施形態のカードリーダで実行されるインデックスファイル生成処理モジュールのフローチャートである。
【図９】第２実施形態のファイル転送システムの動作の順序を示すシーケンスチャートである。
【図１０】本発明の第３実施形態におけるファイル転送システムの電気的構成を示すブロック図である。
【図１１】（ａ）はＰＣで実行されるメモリカードアクセス指示処理ファイルのフローチャートであり、（ｂ）は第３実施形態のカードリーダで実行されるｇｅｔコマンド処理モジュールのフローチャートである。
【図１２】第３実施形態のカードリーダで実行されるインデックスファイル生成処理モジュールのフローチャートである。
【図１３】第３実施形態のファイル転送システムの動作の順序を示すシーケンスチャートである。
【符号の説明】
【０２１３】
１                              ファイル転送システム
１０                            カードリーダ（サーバ装置）
１８                            メモリカード（ファイル格納手段）
１８ａ                          ダミーファイル（ダミーファイル格納手段）
２０                            ＰＣ（クライアント装置）
２４ａ                          ＷＷＷブラウザ
４０                            ＬＡＮ（ネットワーク）
Ｓ４０３                        受信手段
Ｓ４１２、Ｓ７１１、Ｓ１１１３  インデックスファイル生成手段
Ｓ４１４                        ファイル取得手段
Ｓ４１５、Ｓ７１２              送信手段
Ｓ５０６                        ダミーファイル生成手段
Ｓ１２０１                      付帯情報生成手段
Ｓ１２０２、Ｓ１２０３          付加手段
Ｓ５０７                        サムネイル生成手段
【図１】
2009037361.tif 000003
【図２】
2009037361.tif 000004
【図３】
2009037361.tif 000005
【図４】
2009037361.tif 000006
【図５】
2009037361.tif 000007
【図６】
2009037361.tif 000008
【図７】
2009037361.tif 000009
【図８】
2009037361.tif 000010
【図９】
2009037361.tif 000011
【図１０】
2009037361.tif 000012
【図１１】
2009037361.tif 000013
【図１２】
2009037361.tif 000014
【図１３】
2009037361.tif 000015
【手続補正書】
【提出日】平成19年8月6日(2007.8.6)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
ハイパーテキスト形式のファイルを表示し、そのハイパーテキスト形式のファイルに埋め込まれた、別のファイルの所在位置を示すパスを用いてその別のファイルの転送命令を送信し、その転送命令に応じて返信されるファイルを受信可能なブラウザを備えたクライアント装置と、ネットワークを介して通信可能なサーバ装置であって、
複数の階層を有するディレクトリ構造に従ってファイルを格納するファイル格納手段と、
そのファイル格納手段に格納されているファイルの転送命令を前記ブラウザより受信する受信手段と、
その受信手段で受信した転送命令により指定されたファイルを前記ファイル格納手段から取得するファイル取得手段と、
前記ファイル格納手段の所定のディレクトリに存在するファイル及びサブディレクトリを検出して、その所定のディレクトリに存在するファイル及びサブディレクトリの一覧であり且つファイル及びサブディレクトリを識別する各々の識別情報に各々対応するファイル及びサブディレクトリのパスが直接又は間接的に関連付けられて埋め込まれたハイパーテキスト形式のインデックスファイルを生成するインデックスファイル生成手段と、
前記受信手段で受信したファイルの転送命令が前記インデックスファイルの転送命令である場合は前記インデックスファイル生成手段で生成したインデックスファイルを前記ブラウザに送信し、前記インデックスファイルに埋め込まれたパスによって指定されたファイルの転送命令である場合は前記ファイル取得手段で取得したファイルを前記ブラウザに送信するファイル送信手段とを備えていることを特徴とするサーバ装置。
【請求項２】
前記インデックスファイル生成手段は、前記受信手段により所定のディレクトリのインデックスファイルの転送命令を受信した場合に、その所定のディレクトリについてインデックスファイルを生成することを特徴とする請求項１に記載のサーバ装置。
【請求項３】
前記インデックスファイル生成手段は、前記ファイル格納手段の所定のディレクトリにファイル若しくはサブディレクトリが新規作成された場合、又は、その所定のディレクトリからファイル若しくはサブディレクトリが削除された場合に、その所定のディレクトリについてインデックスファイルを生成することを特徴とする請求項１に記載のサーバ装置。
【請求項４】
前記インデックスファイル生成手段は、前記所定のディレクトリに存在するサブディレクトリの各々の識別情報に対し、そのサブディレクトリに存在するファイル及びサブディレクトリの一覧であり且つそのファイル及びサブディレクトリを識別する各々の識別情報に各々対応するファイル及びサブディレクトリのパスが直接又は間接的に関連付けられて埋め込まれた各々のハイパーテキスト形式のインデックスファイルのパスが、直接又は間接的に関連付けられて埋め込まれたインデックスファイルを生成することを特徴とする請求項１から３のいずれかに記載のサーバ装置。
【請求項５】
前記所定のディレクトリに存在するファイル及びサブディレクトリの各々について、前記ブラウザから一度アクセスされたファイルを記憶するキャッシュを使わずに、対応するファイル若しくはサブディレクトリへ直接アクセスすることを前記ブラウザに指示する指示情報と、その対応するファイル若しくはサブディレクトリのパスとを記述したハイパーテキスト形式のダミーファイルを生成するダミーファイル生成手段と、
前記ダミーファイル生成手段で生成されたダミーファイルを格納するダミーファイル格納手段とを備え、
前記インデックスファイル生成手段は、各々のファイル及びサブディレクトリの識別情報に各々対応する前記ダミーファイル格納手段に格納されたダミーファイルのパスが関連付けられて埋め込まれたインデックスファイルを生成し、
前記ファイル送信手段は、前記受信手段で受信したファイルの転送命令が前記ダミーファイルの転送命令である場合は前記ダミーファイル格納手段に格納されたダミーファイルを前記ブラウザに送信することを特徴とする請求項１から４のいずれかに記載のサーバ装置。
【請求項６】
前記クライアント装置との間のデータ転送プロトコルはハイパーテキスト転送プロトコルであり、
前記ファイル送信手段は、前記ブラウザから前記インデックスファイルに埋め込まれたパスを用いて指定されたファイルを前記ブラウザに送信する場合に、前記クライアント装置のブラウザに対し、そのブラウザから一度アクセスされたファイルを記憶するキャッシュにその送信するファイルを記憶しないことを指示するヘッダ情報を送信することを特徴とする請求項１から４のいずれかに記載のサーバ装置。
【請求項７】
少なくとも前記インデックスファイル生成手段が前記インデックスファイルを生成する毎に内容が変化する付帯情報を生成する付帯情報生成手段と、
前記所定のディレクトリに存在する各々のファイル及びサブディレクトリのパスの一部に、その付帯情報生成手段で生成した付帯情報を各々付加する付加手段とを備え、
前記インデックスファイル生成手段は、前記ファイル及びサブディレクトリの各々の識別情報にその付加手段で付帯情報が付加された各々のパスが関連付けられて埋め込まれたインデックスファイルを生成し、
前記受信手段は、前記転送命令で指定されたファイルのパスに前記付帯情報が付加されている場合に、その指定されたファイルのパスから前記付帯情報を削除したパスをその指定されたファイルの正しいパスとして認識することを特徴とする請求項１から４のいずれかに記載のサーバ装置。
【請求項８】
前記インデックスファイル生成手段は、前記所定のディレクトリとその所定のディレクトリに含まれる所定階層までのサブディレクトリについて、各々のディレクトリ及びサブディレクトリに存在するファイル及びサブディレクトリを検出し、その検出したファイルとサブディレクトリを識別する各々の識別情報に各々対応するファイル及びサブディレクトリのパスが直接又は間接的に関連付けられて埋め込まれたインデックスファイルを生成することを特徴とする請求項１から７のいずれかに記載のサーバ装置。
【請求項９】
前記ファイル格納手段に画像、文書、若しくは図面ファイルが格納されている場合に、それらのファイルの画像若しくはページを縮小したサムネイルを各々生成するサムネイル生成手段を備え、
前記インデックスファイル生成手段は、ファイルが画像、文書、若しくは図面ファイルである場合に、そのファイルの識別情報として前記サムネイル生成手段によって生成されたサムネイルを用いて前記インデックスファイルを生成することを特徴とする請求項１から８のいずれかに記載のサーバ装置。
【請求項１０】
前記所定のディレクトリに存在する各々のサブディレクトリについて、各々のサブディレクトリのサイズ若しくはそのサブディレクトリに含まれるファイル及びサブディレクトリの数を取得するサブディレクトリ情報取得手段を備え、
前記インデックスファイル生成手段は、前記サブディレクトリ情報取得手段で取得した各々のサブディレクトリのサイズ若しくはそのサブディレクトリに含まれるファイル及びサブディレクトリの数が、各々のサブディレクトリの識別情報毎に設けられたサブディレクトリ情報領域に表示されるように記述されたインデックスファイルを生成することを特徴とする請求項１から９のいずれかに記載のサーバ装置。
【請求項１１】
ハイパーテキスト形式のファイルを表示し、そのハイパーテキスト形式のファイルに埋め込まれた別のファイルの所在位置を示すパスを用いてその別のファイルの転送命令を送信し、その転送命令に応じて返信されるファイルを受信可能なブラウザを備えたクライアント装置とネットワークを介して通信可能であり、複数の階層を有するディレクトリ構造に従ってファイルを格納するファイル格納手段を備えたサーバ装置によって実行されるサーバ装置制御プログラムであって、そのサーバ装置によって、
前記ファイル格納手段に格納されているファイルの転送命令を前記ブラウザより受信する受信ステップと、
その受信ステップで受信した転送命令により指定されたファイルを前記ファイル格納手段から取得するファイル取得ステップと、
前記ファイル格納手段の所定のディレクトリに存在するファイル及びサブディレクトリを検出して、その所定のディレクトリに存在するファイル及びサブディレクトリの一覧であり且つファイル及びサブディレクトリを識別する各々の識別情報に各々対応するファイル及びサブディレクトリのパスが直接又は間接的に関連付けられて埋め込まれたハイパーテキスト形式のインデックスファイルを生成するインデックスファイル生成ステップと、
前記受信ステップで受信したファイルの転送命令が前記インデックスファイルの転送命令である場合は前記インデックスファイル生成ステップで生成したインデックスファイルを前記ブラウザに送信し、前記インデックスファイルに埋め込まれたパスによって指定されたファイルの転送命令である場合は前記ファイル取得ステップで取得したファイルを前記ブラウザに送信するファイル送信ステップとが実行されることを特徴とするサーバ装置制御プログラム。
【請求項１２】
クライアント装置と、複数の階層を有するディレクトリ構造に従ってファイルを格納するファイル格納手段を有し、そのファイル格納手段に格納されたファイルをネットワークを介して前記クライアント装置に転送可能なサーバ装置とを備えたファイル転送システムであって、
前記クライアント装置は、
ハイパーテキスト形式のファイルを表示し、そのハイパーテキスト形式のファイルに埋め込まれた他のファイルの所在位置を示すパスを用いてそのファイルにアクセス可能なブラウザと、
そのブラウザでアクセスが指示されたファイルの転送命令を前記サーバに対して行う第１の転送命令手段と、
前記ファイル格納手段の所定のディレクトリに存在するファイル及びサブディレクトリの一覧であり且つファイル及びサブディレクトリを識別する各々の識別情報に各々対応するファイル及びサブディレクトリのパスが直接又は間接的に関連付けられて埋め込まれたハイパーテキスト形式のインデックスファイルの転送命令を前記サーバに対して行う第２の転送命令手段とを備え、
前記サーバ装置は、
前記第１の転送命令手段及び前記第２の転送命令手段からの転送命令を受信する受信手段と、
その受信手段で受信した転送命令により指定されたファイルを前記ファイル格納手段から取得するファイル取得手段と、
前記ファイル格納手段の所定のディレクトリに存在するファイル及びサブディレクトリを検出して、その所定のディレクトリに存在するファイル及びサブディレクトリを識別する各々の識別情報に各々対応するファイル及びサブディレクトリのパスが直接又は間接的に関連付けられて埋め込まれたハイパーテキスト形式のインデックスファイルを生成するインデックスファイル生成手段と、
前記受信手段で受信したファイルの転送命令が前記インデックスファイルの転送命令である場合は前記インデックスファイル生成手段で生成したインデックスファイルを前記ブラウザに送信し、前記インデックスファイルに埋め込まれたパスによって指定されたファイルの転送命令である場合は前記ファイル取得手段で取得したファイルを前記ブラウザに送信するファイル送信手段とを備えていることを特徴とするファイル転送システム。
【手続補正２】
【補正対象書類名】明細書
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、サーバ装置、サーバ装置制御プログラム、及びファイル転送システムに関するものである。
【背景技術】
【０００２】
従来、ネットワークを介してデータ転送を行う通信プロトコルとして、ファイル転送プロトコル（ＦＴＰ：Ｆｉｌｅ  Ｔｒａｎｓｆｅｒ  Ｐｒｏｔｏｃｏｌ）やハイパーテキスト転送プロトコル（ＨＴＴＰ：Ｈｙｐｅｒｔｅｘｔ  Ｔｒａｎｓｆｅｒ  Ｐｒｏｔｏｃｏｌ）が知られており、このＦＴＰやＨＴＴＰに従ってデータの送受信を行うシステムが数多く見受けられる。
【０００３】
例えば、次の特許文献１には、ＷＷＷ（Ｗｏｒｌｄ  Ｗｉｄｅ  Ｗｅｂ）サーバに格納されたファイルをユーザ端末に転送し、ユーザ端末のＷＷＷブラウザでそのファイルを表示するシステムが開示されている。この特許文献１に記載のシステムでは、ＷＷＷサーバに格納されたファイルにアクセスするためのリンクが予めユーザ端末のＷＷＷブラウザ上に提示され、ユーザがそのＷＷＷブラウザ上に提示されたファイルのリンクを選択することにより、そのリンクに対応するファイルがＷＷＷサーバからユーザ端末に転送されるようになっている。
【特許文献１】特開２００３−８５０７４号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
しかしながら、この特許文献１に記載のシステムでは、ＷＷＷサーバに格納されているファイルが削除されたり、新たなファイルが保存されたりしても、ＷＷＷブラウザに提示されるファイルのリンクは更新されない。そのため、ＷＷＷブラウザに提示されたファイルのリンクを選択してもそのファイルが存在しなかったり、ＷＷＷサーバに格納されているはずのファイルのリンクがＷＷＷブラウザに提示されなかったりする等の不具合が生じ、ＷＷＷサーバに格納されているファイルに対して、確実にアクセスすることができないという問題点があった。
【０００５】
本発明は上述した問題点を解決するためになされたものであり、クライアント装置からサーバ装置に格納されているファイルへ確実にアクセスさせることができるサーバ装置、サーバ装置制御プログラム、及びファイル転送システムを提供することを目的とする。
【課題を解決するための手段】
【０００６】
この目的を達成するために、請求項１に記載のサーバ装置は、ハイパーテキスト形式のファイルを表示し、そのハイパーテキスト形式のファイルに埋め込まれた、別のファイルの所在位置を示すパスを用いてその別のファイルの転送命令を送信し、その転送命令に応じて返信されるファイルを受信可能なブラウザを備えたクライアント装置と、ネットワークを介して通信可能なものであって、複数の階層を有するディレクトリ構造に従ってファイルを格納するファイル格納手段と、そのファイル格納手段に格納されているファイルの転送命令を前記ブラウザより受信する受信手段と、その受信手段で受信した転送命令により指定されたファイルを前記ファイル格納手段から取得するファイル取得手段と、前記ファイル格納手段の所定のディレクトリに存在するファイル及びサブディレクトリを検出して、その所定のディレクトリに存在するファイル及びサブディレクトリの一覧であり且つファイル及びサブディレクトリを識別する各々の識別情報に各々対応するファイル及びサブディレクトリのパスが直接又は間接的に関連付けられて埋め込まれたハイパーテキスト形式のインデックスファイルを生成するインデックスファイル生成手段と、前記受信手段で受信したファイルの転送命令が前記インデックスファイルの転送命令である場合は前記インデックスファイル生成手段で生成したインデックスファイルを前記ブラウザに送信し、前記インデックスファイルに埋め込まれたパスによって指定されたファイルの転送命令である場合は前記ファイル取得手段で取得したファイルを前記ブラウザに送信するファイル送信手段とを備えている。
【０００７】
ここで、「ハイパーテキスト形式のファイル」とは、テキスト中に別のファイルの所在位置を示すパスが埋め込まれたファイルのことである。また、「ディレクトリ」とは、ファイル格納手段においてファイルを分類し、整理するための保管場所を示すものであり、オペレーティングシステム（ＯＳ：Ｏｐｅｒｅｔｉｎｇ  Ｓｙｓｔｅｍ）によっては「フォルダ」とも呼ばれる。また、「サブディレクトリ」とはディレクトリの中に設けられたディレクトリのことであり、「ディレクトリ」と同様にＯＳによっては「サブフォルダ」とも呼ばれる。
【０００８】
請求項２に記載のサーバ装置は、請求項１に記載のサーバ装置において、前記インデックスファイル生成手段は、前記受信手段により所定のディレクトリのインデックスファイルの転送命令を受信した場合に、その所定のディレクトリについてインデックスファイルを生成する。
【０００９】
請求項３に記載のサーバ装置は、請求項１に記載のサーバ装置において、前記インデックスファイル生成手段は、前記ファイル格納手段の所定のディレクトリにファイル若しくはサブディレクトリが新規作成された場合、又は、その所定のディレクトリからファイル若しくはサブディレクトリが削除された場合に、その所定のディレクトリについてインデックスファイルを生成する。
【００１０】
請求項４に記載のサーバ装置は、請求項１から３のいずれかに記載のサーバ装置において、前記インデックスファイル生成手段は、前記所定のディレクトリに存在するサブディレクトリの各々の識別情報に対し、そのサブディレクトリに存在するファイル及びサブディレクトリの一覧であり且つそのファイル及びサブディレクトリを識別する各々の識別情報に各々対応するファイル及びサブディレクトリのパスが直接又は間接的に関連付けられて埋め込まれた各々のハイパーテキスト形式のインデックスファイルのパスが、直接又は間接的に関連付けられて埋め込まれたインデックスファイルを生成する。
【００１１】
請求項５に記載のサーバ装置は、請求項１から４のいずれかに記載のサーバ装置において、前記所定のディレクトリに存在するファイル及びサブディレクトリの各々について、前記ブラウザから一度アクセスされたファイルを記憶するキャッシュを使わずに、対応するファイル若しくはサブディレクトリへ直接アクセスすることを前記ブラウザに指示する指示情報と、その対応するファイル若しくはサブディレクトリのパスとを記述したハイパーテキスト形式のダミーファイルを生成するダミーファイル生成手段と、前記ダミーファイル生成手段で生成されたダミーファイルを格納するダミーファイル格納手段とを備え、前記インデックスファイル生成手段は、各々のファイル及びサブディレクトリの識別情報に各々対応する前記ダミーファイル格納手段に格納されたダミーファイルのパスが関連付けられて埋め込まれたインデックスファイルを生成し、前記ファイル送信手段は、前記受信手段で受信したファイルの転送命令が前記ダミーファイルの転送命令である場合は前記ダミーファイル格納手段に格納されたダミーファイルを前記ブラウザに送信する。
【００１２】
請求項６に記載のサーバ装置は、請求項１から４のいずれかに記載のサーバ装置において、前記クライアント装置との間のデータ転送プロトコルはハイパーテキスト転送プロトコルであり、前記ファイル送信手段は、前記ブラウザから前記インデックスファイルに埋め込まれたパスを用いて指定されたファイルを前記ブラウザに送信する場合に、前記クライアント装置のブラウザに対し、そのブラウザから一度アクセスされたファイルを記憶するキャッシュにその送信するファイルを記憶しないことを指示するヘッダ情報を送信する。
【００１３】
請求項７に記載のサーバ装置は、請求項１から４のいずれかに記載のサーバ装置において、少なくとも前記インデックスファイル生成手段が前記インデックスファイルを生成する毎に内容が変化する付帯情報を生成する付帯情報生成手段と、前記所定のディレクトリに存在する各々のファイル及びサブディレクトリのパスの一部に、その付帯情報生成手段で生成した付帯情報を各々付加する付加手段とを備え、前記インデックスファイル生成手段は、前記ファイル及びサブディレクトリの各々の識別情報にその付加手段で付帯情報が付加された各々のパスが関連付けられて埋め込まれたインデックスファイルを生成し、前記受信手段は、前記転送命令で指定されたファイルのパスに前記付帯情報が付加されている場合に、その指定されたファイルのパスから前記付帯情報を削除したパスをその指定されたファイルの正しいパスとして認識する。
【００１４】
請求項８に記載のサーバ装置は、請求項１から７のいずれかに記載のサーバ装置において、前記インデックスファイル生成手段は、前記所定のディレクトリとその所定のディレクトリに含まれる所定階層までのサブディレクトリについて、各々のディレクトリ及びサブディレクトリに存在するファイル及びサブディレクトリを検出し、その検出したファイルとサブディレクトリを識別する各々の識別情報に各々対応するファイル及びサブディレクトリのパスが直接又は間接的に関連付けられて埋め込まれたインデックスファイルを生成する。
【００１５】
請求項９に記載のサーバ装置は、請求項１から８のいずれかに記載のサーバ装置において、前記ファイル格納手段に画像、文書、若しくは図面ファイルが格納されている場合に、それらのファイルの画像若しくはページを縮小したサムネイルを各々生成するサムネイル生成手段を備え、前記インデックスファイル生成手段は、ファイルが画像、文書、若しくは図面ファイルである場合に、そのファイルの識別情報として前記サムネイル生成手段によって生成されたサムネイルを用いて前記インデックスファイルを生成する。
【００１６】
請求項１０に記載のサーバ装置は、請求項１から９のいずれかに記載のサーバ装置において、前記所定のディレクトリに存在する各々のサブディレクトリについて、各々のサブディレクトリのサイズ若しくはそのサブディレクトリに含まれるファイル及びサブディレクトリの数を取得するサブディレクトリ情報取得手段を備え、前記インデックスファイル生成手段は、前記サブディレクトリ情報取得手段で取得した各々のサブディレクトリのサイズ若しくはそのサブディレクトリに含まれるファイル及びサブディレクトリの数が、各々のサブディレクトリの識別情報毎に設けられたサブディレクトリ情報領域に表示されるように記述されたインデックスファイルを生成する。
【００１７】
請求項１１に記載のサーバ装置制御プログラムは、ハイパーテキスト形式のファイルを表示し、そのハイパーテキスト形式のファイルに埋め込まれた別のファイルの所在位置を示すパスを用いてその別のファイルの転送命令を送信し、その転送命令に応じて返信されるファイルを受信可能なブラウザを備えたクライアント装置とネットワークを介して通信可能であり、複数の階層を有するディレクトリ構造に従ってファイルを格納するファイル格納手段を備えたサーバ装置によって実行されるものであって、そのサーバ装置によって、前記ファイル格納手段に格納されているファイルの転送命令を前記ブラウザより受信する受信ステップと、その受信ステップで受信した転送命令により指定されたファイルを前記ファイル格納手段から取得するファイル取得ステップと、前記ファイル格納手段の所定のディレクトリに存在するファイル及びサブディレクトリを検出して、その所定のディレクトリに存在するファイル及びサブディレクトリの一覧であり且つファイル及びサブディレクトリを識別する各々の識別情報に各々対応するファイル及びサブディレクトリのパスが直接又は間接的に関連付けられて埋め込まれたハイパーテキスト形式のインデックスファイルを生成するインデックスファイル生成ステップと、前記受信ステップで受信したファイルの転送命令が前記インデックスファイルの転送命令である場合は前記インデックスファイル生成ステップで生成したインデックスファイルを前記ブラウザに送信し、前記インデックスファイルに埋め込まれたパスによって指定されたファイルの転送命令である場合は前記ファイル取得ステップで取得したファイルを前記ブラウザに送信するファイル送信ステップとが実行される。
【００１８】
請求項１２に記載のファイル転送システムは、クライアント装置と、複数の階層を有するディレクトリ構造に従ってファイルを格納するファイル格納手段を有し、そのファイル格納手段に格納されたファイルをネットワークを介して前記クライアント装置に転送可能なサーバ装置とを備えたものであって、前記クライアント装置は、ハイパーテキスト形式のファイルを表示し、そのハイパーテキスト形式のファイルに埋め込まれた他のファイルの所在位置を示すパスを用いてそのファイルにアクセス可能なブラウザと、そのブラウザでアクセスが指示されたファイルの転送命令を前記サーバに対して行う第１の転送命令手段と、前記ファイル格納手段の所定のディレクトリに存在するファイル及びサブディレクトリの一覧であり且つファイル及びサブディレクトリを識別する各々の識別情報に各々対応するファイル及びサブディレクトリのパスが直接又は間接的に関連付けられて埋め込まれたハイパーテキスト形式のインデックスファイルの転送命令を前記サーバに対して行う第２の転送命令手段とを備え、前記サーバ装置は、前記第１の転送命令手段及び前記第２の転送命令手段からの転送命令を受信する受信手段と、その受信手段で受信した転送命令により指定されたファイルを前記ファイル格納手段から取得するファイル取得手段と、前記ファイル格納手段の所定のディレクトリに存在するファイル及びサブディレクトリを検出して、その所定のディレクトリに存在するファイル及びサブディレクトリを識別する各々の識別情報に各々対応するファイル及びサブディレクトリのパスが直接又は間接的に関連付けられて埋め込まれたハイパーテキスト形式のインデックスファイルを生成するインデックスファイル生成手段と、前記受信手段で受信したファイルの転送命令が前記インデックスファイルの転送命令である場合は前記インデックスファイル生成手段で生成したインデックスファイルを前記ブラウザに送信し、前記インデックスファイルに埋め込まれたパスによって指定されたファイルの転送命令である場合は前記ファイル取得手段で取得したファイルを前記ブラウザに送信するファイル送信手段とを備えている。
【発明の効果】
【００１９】
請求項１に記載のサーバ装置によれば、インデックスファイル生成手段によって、所定のディレクトリに存在するファイル及びサブディレクトリが検出されてからインデックスファイルが生成されるので、そのインデックスファイルにより、所定のディレクトリに存在するファイル及びサブディレクトリを正確にブラウザに表示させることができる。よって、そのインデックスファイルに埋め込まれたパスを用いて、ブラウザから所望のファイルにアクセスさせることができる。従って、クライアント装置からサーバ装置に格納されているファイルへ確実にアクセスさせることができるという効果がある。
【００２０】
また、従来の技術では、所定のディレクトリに存在するファイル及びサブディレクトリが正確に表示されなかったため、その所定のディレクトリに存在するファイル及びサブディレクトリの内容を確認するためには、それらを１つずつ読み出して、その内容を表示させなければならなかった。これに対し、請求項１に記載のサーバ装置によれば、インデックスファイルにより所定のディレクトリに存在するファイル及びサブディレクトリを正確にブラウザに表示させることができるので、クライアント装置のユーザは、その所定のディレクトリに存在するファイル及びサブディレクトリの内容をインデックスファイルに記載された各々の識別情報によって推定することができる。よって、ユーザに対して効率的に所望のファイルやサブディレクトリを確認させることができるという効果がある。
【００２１】
更に、サーバ装置でハイパーテキスト形式のインデックスファイルが生成されてブラウザに送信されるので、クライアント装置がハイパーテキスト形式のファイルに対応したブラウザを備えていればその生成されたインデックスファイルを表示させることができる。よって、異なるブラウザであっても同じ使用感でファイルへのアクセスを行わせることができるという効果がある。
【００２２】
請求項２に記載のサーバ装置によれば、請求項１に記載のサーバ装置の奏する効果に加えて、インデックスファイルの転送命令が受信されたときに所定のディレクトリに存在するファイル及びサブディレクトリがインデックスファイルに反映される。よって、クライアント装置のブラウザに対し、サーバ装置に格納されているファイル及びサブディレクトリの最新の情報を表示させることができるという効果がある。
【００２３】
請求項３に記載のサーバ装置によれば、請求項１に記載のサーバ装置の奏する効果に加えて、インデックスファイルの転送命令が受信されたときに所定のディレクトリに存在するファイル及びサブディレクトリが反映されたインデックスファイルが既に生成されている。よって、クライアント装置のブラウザに対し、サーバ装置に格納されているファイル及びサブディレクトリの最新の情報を表示させることができるという効果がある。
【００２４】
請求項４に記載のサーバ装置によれば、請求項１から３のいずれかに記載のサーバ装置の奏する効果に加えて、クライアント装置のブラウザに表示されたインデックスファイルからサブディレクトリが選択された場合、ブラウザにそのサブディレクトリのインデックスファイルを表示させることができる。よって、クライアント装置に対し、下層のサブディレクトリに格納されているファイルへのアクセスを容易に行わせることができるという効果がある。
【００２５】
請求項５に記載のサーバ装置によれば、請求項１から４のいずれかに記載のサーバ装置の奏する効果に加えて、クライアント装置のブラウザに表示されたインデックスファイルからユーザにより所望のファイル若しくはサブディレクトリが選択された場合、そのファイル若しくはサブディレクトリについて過去のデータがキャッシュに記憶されていても、対応するダミーファイルにより、クライアント装置に対しサーバ装置の最新のファイル若しくはサブディレクトリへアクセスさせることができるという効果がある。
【００２６】
請求項６に記載のサーバ装置によれば、請求項１から４のいずれかに記載のサーバ装置の奏する効果に加えて、ブラウザからファイル格納手段に格納されたファイルに繰り返しアクセスが行われる場合でも、そのファイルがキャッシュに記憶されないので、クライアント装置はファイル格納手段に格納されたファイルへ常に直接アクセスする。よって、クライアント装置からサーバ装置の最新のファイルへアクセスさせることができるという効果がある。
【００２７】
請求項７に記載のサーバ装置によれば、請求項１から４のいずれかに記載のサーバ装置の奏する効果に加えて、異なるタイミングで生成されたインデックスファイルにより、同一のファイルやサブディレクトリがブラウザから選択されても、ブラウザには異なるファイル若しくはサブディレクトリとして認識させることができる。よって、ブラウザに対し、キャッシュのデータを参照させないようにすることができる。
【００２８】
一方、ブラウザからの転送命令で指定されたファイルのパスに付帯情報が付加されている場合には、正しいパスによって指定されたファイルがクライアント装置に送信される。よって、ユーザの所望のファイルを正しくクライアント装置へ送信することができるので、クライアント装置から最新のファイルへ確実にアクセスさせることができるという効果がある。
【００２９】
請求項８に記載のサーバ装置によれば、請求項１から７のいずれかに記載のサーバ装置の奏する効果に加えて、所定のディレクトリとそのディレクトリに含まれる所定階層までのサブディレクトリに存在するファイル及びサブディレクトリの一覧を、１つのインデックスファイルで確認することができる。よって、クライアント装置のユーザに対し、サーバ装置の下層のサブディレクトリに格納されている所望のファイルを少ない操作で発見させ、そのファイルへのアクセスを容易に行わせることができるという効果がある。
【００３０】
請求項９に記載のサーバ装置によれば、請求項１から８のいずれかに記載のサーバ装置の奏する効果に加えて、クライアント装置に対し、サーバ装置のファイル格納手段に格納されているファイルの内容をサムネイルによって容易に確認させることができるという効果がある。
【００３１】
請求項１０に記載のサーバ装置によれば、サブディレクトリ情報領域に表示されたサブディレクトリのサイズ若しくはそのサブディレクトリに含まれるファイル及びサブディレクトリの数によって、各サブディレクトリに含まれるファイルの内容を推測させることができる。よって、クライアント装置に対し、サブディレクトリに所望のファイルが存在するか否かの判断を容易に行わせることができるという効果がある。
【００３２】
請求項１１に記載のサーバ装置制御プログラムによれば、サーバ装置によって実行されることにより、クライアント装置からサーバ装置に格納されているファイルへ確実にアクセスさせることができるという効果がある。また、所定のディレクトリに存在するファイル及びサブディレクトリの内容をインデックスファイルに記載された各々の識別情報によって推定することができるので、ユーザに対して効率的に所望のファイルやサブディレクトリを確認させることができるという効果がある。更に、サーバ装置でハイパーテキスト形式のインデックスファイルが生成されてブラウザに送信されるので、異なるブラウザであっても同じ使用感でファイルへのアクセスを行わせることができるという効果がある。
【００３３】
請求項１２に記載のファイル転送システムによれば、クライアント装置からサーバ装置に格納されているファイルへ確実にアクセスさせることができるという効果がある。また、所定のディレクトリに存在するファイル及びサブディレクトリの内容をインデックスファイルに記載された各々の識別情報によって推定することができるので、ユーザに対して効率的に所望のファイルやサブディレクトリを確認させることができるという効果がある。更に、サーバ装置でハイパーテキスト形式のインデックスファイルが生成されてブラウザに送信されるので、異なるブラウザであっても同じ使用感でファイルへのアクセスを行わせることができるという効果がある。
【発明を実施するための最良の形態】
【００３４】
以下、本発明の好ましい実施形態について、添付図面を参照して説明する。図１は、本発明の第１実施形態におけるファイル転送システム１の電気的構成を示すブロック図である。
【００３５】
このファイル転送システム１は、サーバ装置として機能するカードリーダ１０とクライアント装置として機能するパーソナルコンピュータ（ＰＣ：Ｐｅｒｓｏｎａｌ  Ｃｏｍｐｕｔｅｒ）２０とから構成されており、カードリーダ１０とＰＣ２０とはＬＡＮ（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）４０を介して接続されている。このファイル転送システム１は、ＰＣ２０から、カードリーダ１０に装着されたメモリカード１８に格納されているファイルへ確実にアクセスさせることができるシステムである。
【００３６】
このファイル転送システム１では、カードリーダ１０が、メモリカード１８にある所定のディレクトリのインデックスファイルを生成し、ＰＣ２０に対して提供する。この「所定のディレクトリのインデックスファイル」とは、所定のディレクトリに存在するファイル及びサブディレクトリが一覧になった、ハイパーテキスト形式のファイルである。そして、各ファイル及びサブディレクトリの名称に、各々のファイル及びサブディレクトリの実体へのリンクが設定されている。この所定のディレクトリのインデックスファイルは、ＰＣ２０がカードリーダ１０に対して所定のディレクトリのインデックスファイルの転送命令を指示する毎に、カードリーダ１０によって生成される。
【００３７】
カードリーダ１０は、メモリカード１８に格納されたファイルを読み出すことが可能なサーバ装置である。カードリーダ１０には、メモリカード１８を着脱自在に装着可能なカードスロット（図示せず）が設けられており、そのカードスロットにメモリカード１８を装着することにより、カードリーダ１０はメモリカード１８とアクセスできるようになっている。また、カードリーダ１０は、ＰＣ２０との間でファイル転送プロトコル（ＦＴＰ：Ｆｉｌｅ  Ｔｒａｎｓｆｅｒ  Ｐｒｏｔｏｃｏｌ）に従った通信を行い、ＬＡＮ４０を介してメモリカード１８に格納されたファイルをＰＣ２０へ転送する。
【００３８】
このカードリーダ１０は、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）１１、ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）１２、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）１３、ＬＡＮインターフェイス１４、メモリカードインターフェイス１５、及び計時回路１６を備えており、これらはバスライン１７を介して互いに接続されている。また、カードリーダ１０は、メモリカードインターフェイス１５を介してメモリカード１８と接続される。
【００３９】
ＣＰＵ１１は、ＲＯＭ１２やＲＡＭ１３に記憶されるプログラムやデータ或いはＬＡＮインターフェイス１４を介して送受信される各種信号に従って、バスライン１７により接続された各部を制御する演算装置である。
【００４０】
ＲＯＭ１２は、ＣＰＵ１１により実行される各種プログラムや、そのプログラムを実行する際に参照する固定値を記憶する書換不能なメモリである。このＲＯＭ１２には、制御プログラムであるＦＴＰサーバプログラム１２ａが記憶されており、このＦＴＰサーバプログラム１２ａと連動するｇｅｔコマンド処理モジュール１２ｂが記憶されている。また、ｇｅｔコマンド処理モジュール１２ｂと連動するインデックスファイル生成処理モジュール１２ｃが記憶されている。
【００４１】
ＦＴＰサーバプログラム１２ａは、ＰＣ２０との間でＦＴＰに従った通信を行うプログラムである。このプログラムは、カードリーダ１０が起動する際に、ＣＰＵ１１によって起動され、ＰＣ２０からＦＴＰのコマンドが入力されると、そのコマンドに従った処理を実行する。このとき、入力されたコマンドが「ｇｅｔ」コマンドである場合は、ｇｅｔコマンド処理モジュール１２ｂを起動して、「ｇｅｔ」コマンドに従った処理を実行する。ＦＴＰサーバプログラム１２ａは、カードリーダ１０が停止するまで実行され続ける。
【００４２】
ｇｅｔコマンド処理モジュール１２ｂは、ＦＴＰの「ｇｅｔ」コマンドに対する処理をＣＰＵ１１に実行させるためのプログラムであり、ＦＴＰサーバプログラム１２ａと連動するモジュールである。「ｇｅｔ」コマンドは、ＰＣ２０が指定したファイルの転送をカードリーダ１０に対して指示する転送命令である。
【００４３】
ｇｅｔコマンド処理モジュール１２ｂが実行されると、ＣＰＵ１１は「ｇｅｔ」コマンドで指定されたファイルをＰＣ２０へ転送する。このとき、「ｇｅｔ」コマンドで指定されたファイルがインデックスファイルである場合には、インデックスファイル生成処理モジュール１２ｃを起動し、生成されたインデックスファイルをＰＣ２０へ転送する。また、「ｇｅｔ」コマンドで指定されたファイルが存在しなかった場合、及び、インデックスファイルが生成できなかった場合は、「ＮＧ」コードをＰＣ２０へ返信する。そして、ＣＰＵ１１は、ファイルの転送若しくは「ＮＧ」コードの返信を行った後、ｇｅｔコマンド処理モジュール１２ｂの実行を終了する。
【００４４】
そして、ＰＣ２０が、メモリカード１８の所定のディレクトリに存在する（実際には、存在するものとして取り扱った）インデックスファイルを指定ファイルとした「ｇｅｔ」コマンドを送信すると、カードリーダ１０は、その所定のディレクトリのインデックスファイルをインデックスファイル生成処理モジュール１２ｃによって生成し、ＰＣ２０へ返信する。このため、「ｇｅｔ」コマンドが送信された時点ではメモリカード１８に存在しないインデックスファイルの実体を、ＰＣ２０のユーザは、取り扱うことができる。
【００４５】
インデックスファイル生成処理モジュール１２ｃは、インデックスファイルを生成する処理をＣＰＵ１１に実行させるためのプログラムであり、ｇｅｔコマンド処理モジュール１２ｂと連動するモジュールである。
【００４６】
ここで、図２（ａ）を参照して、インデックスファイルについて説明する。図２（ａ）は、ＰＣ２０のＷＷＷブラウザ２４ａによって液晶ディスプレイ（ＬＣＤ：Ｌｉｑｕｉｄ  Ｃｒｙｓｔａｌ  Ｄｉｓｐｌａｙ）２８に表示されたインデックスファイル５０の表示画面図である。このインデックスファイル５０は、メモリカード１８の最上位ディレクトリであるルートディレクトリを所定のディレクトリとしたインデックスファイルであり、ファイルの実体はＨＴＭＬ（Ｈｙｐｅｒｔｅｘｔ  Ｍａｋｅｕｐ  Ｌａｎｇｕａｇｅ）によって記述されている。
【００４７】
このインデックスファイル５０には、表示されたインデックスファイル５０がメモリカード１８のルートディレクトリのインデックスファイルであることを示した、「Ｉｎｄｅｘ  ｏｆ  ／ａａａ」という文字列が記載されている
【００４８】
そして、ルートディレクトリに存在する全てのサブディレクトリ「Ｐｈｏｔｏ」、「Ｍｕｓｉｃ」、「Ｄｏｃｕｍｅｎｔ」、及び、ファイル「ｔｅｍｐ．ｔｘｔ」の名称５０ａが、一覧となって記載されている。
【００４９】
また、サブディレクトリ「Ｐｈｏｔｏ」の名称が記載されている場所の直下で、その名称の記載開始位置よりも数文字分だけ右側にずれた位置に、サブディレクトリ「Ｐｈｏｔｏ」に含まれる全てのサブディレクトリ「Ｍａｙ」、「Ａｐｒｉｌ」、及びファイル「ｐｉｃ２００７０６１０．ｊｐｇ」、「ｐｉｃ２００７０６１１．ｊｐｇ」、「ｐｉｃ２００７０６１２．ｊｐｇ」の名称が、一覧となって記載されている。同様に、サブディレクトリ「Ｍｕｓｉｃ」の名称が記載されている場所の直下で、その名称の記載開始位置よりも数文字分だけ右側にずれた位置に、サブディレクトリ「Ｍｕｓｉｃ」に含まれる全てのファイル「ｍｕｓｉｃ１．ｍｐ３」、「ｍｕｓｉｃ２．ｍｐ３」の名称が、一覧となって記載されている。
【００５０】
なお、サブディレクトリ「Ｍｕｓｉｃ」にはサブディレクトリが存在していないため、サブディレクトリ「Ｍｕｓｉｃ」に存在するファイルの名称のみが記載されている。また、サブディレクトリ「Ｄｏｃｕｍｅｎｔ」には、ファイルもサブディレクトリも存在していないため、サブディレクトリ「Ｄｏｃｕｍｅｎｔ」の名称の右下方にはファイル名もサブディレクトリも記載されず、その直下にルートディレクトリのファイル「ｔｅｍｐ．ｔｘｔ」の名称が記載される。
【００５１】
このように、インデックスファイル５０は、ルートディレクトリに存在するサブディレクトリの名称の右下方に、そのサブディレクトリに含まれる全てのファイル及びサブディレクトリの名称を記載することにより、そのサブディレクトリに含まれる全てのファイル及びサブディレクトリもユーザに認識させることができるようになっている。これにより、１つのインデックスファイル５０で、２階層分のディレクトリに存在するファイル及びサブディレクトリが確認できる。また、ルートディレクトリに存在するサブディレクトリの名称の右下方に何も記載されず、直下に同じルートディレクトリの別のファイル若しくはサブディレクトリの名称が記載されていれば、そのサブディレクトリにはファイルもサブディレクトリも存在しないことをユーザに認識させることができるようになっている。
【００５２】
一方、サブディレクトリ「Ｐｈｏｔｏ」に存在する画像ファイル「ｐｉｃ２００７０６１０．ｊｐｇ」、「ｐｉｃ２００７０６１１．ｊｐｇ」、「ｐｉｃ２００７０６１２．ｊｐｇ」、及びルートディレクトリに存在する文書ファイル「ｔｅｍｐ．ｔｘｔ」のサムネイル５０ｂが、それぞれのファイルの名称の右方の位置に貼付されている。このサムネイル５０ｂは、画像ファイル、文書ファイル、及び図面ファイルに対して用意されるもので、各々の画像若しくはページを縮小することにより生成される。ユーザは、インデックスファイル５０に貼付されたサムネイル５０ｂにより、画像ファイル、文書ファイル、及び図面ファイルの内容を確認することができるようになっている。なお、各ファイル及びサブディレクトリの名称５０ａとサムネイル５０ｂが本発明の「識別情報」の例である。
【００５３】
更に、インデックスファイル５０には、記載された各々のファイル及びサブディレクトリの名称に、各々対応する後述のダミーファイル１８ａの所在位置（以後、「パス」と称する）を関連付けて埋め込むことにより、ダミーファイル１８ａへのリンクを設定している。これにより、ＷＷＷブラウザ２４ａに表示されたインデックスファイル５０のファイル若しくはサブディレクトリの名称を、ユーザがマウス２７によってクリックすると、ＷＷＷブラウザ２４ａはその名称に設定されたリンクを用いてダミーファイル１８ａの転送命令（「ｇｅｔ」コマンド）をカードリーダ１０へ送信する。これにより、カードリーダ１０からその指定されたダミーファイル１８ａが転送されるようになっている。
【００５４】
次に、図２（ｂ）を参照して、サブディレクトリに対して各々生成されるダミーファイル１８ａについて説明する。図２（ｂ）は、サブディレクトリ「Ｐｈｏｔｏ」に対して生成されたダミーファイル「Ｐｈｏｔｏ＿ｄｕｍｍｙ．ｈｔｍｌ」（以下、『「Ｐｈｏｔｏ」用ダミーファイル』と称する。）の内容を示す図である。
【００５５】
このダミーファイルは、ＨＴＭＬで記述されたハイパーテキスト形式のファイルである。このダミーファイルには、ＨＴＭＬ文書のヘッダ情報領域を示すタグ「＜ＨＥＡＤ＞」と「＜／ＨＥＡＤ＞」の間に、ヘッダ情報の１つであるメタタグ「＜ＭＥＴＡ  ＨＴＴＰ−ＥＱＵＩＶ＝“Ｒｅｆｒｅｓｈ”  ＣＯＮＴＥＮＴ＝“０；ｕｒｌ＝Ｐｈｏｔｏ／＿ｉｎｄｅｘ．ｈｔｍｌ”＞」が記載されている。
【００５６】
このメタタグは、ＷＷＷブラウザ２４ａに対し、キャッシュ２４ｂを使わずに「ｕｒｌ＝」によりリンクが設定されたファイルへアクセスすることを指示する指示情報である。なお、「ＣＯＮＴＥＮＴ＝“０」の「０」は、０秒後にリンク先のファイルへアクセスすることを意味している。
【００５７】
ここで、「ｕｒｌ＝」で示されたパスは、サブディレクトリ「Ｐｈｏｔｏ」のインデックスファイルのパス「Ｐｈｏｔｏ／＿ｉｎｄｅｘ．ｈｔｍｌ」である。これにより、ＷＷＷブラウザ２４ａが「Ｐｈｏｔｏ」用ダミーファイルを受信すると、ＷＷＷブラウザ２４aは０秒後に「Ｐｈｏｔｏ／＿ｉｎｄｅｘ．ｈｔｍｌ」の転送命令（「ｇｅｔ」コマンド）をカードリーダ１０に対して送信することになる。
【００５８】
なお、その他のサブディレクトリに対して生成されるダミーファイル１８ａは、メタタグに設定されたリンク先が、各々のサブディレクトリのインデックスファイルである他は、「Ｐｈｏｔｏ」用ダミーファイルと同じであるので、その説明を省略する。
【００５９】
続いて、図２（ｃ）を参照して、各ファイルに対して生成されるダミーファイル１８ａについて説明する。図２（ｃ）は、ファイル「ｔｅｍｐ．ｔｘｔ」に対して生成されたダミーファイル「ｔｅｍｐ＿ｔｘｔ＿ｄｕｍｍｙ．ｈｔｍｌ」（以下、『「ｔｅｍｐ．ｔｘｔ」用ダミーファイル』と称する。）の内容を示す図である。
【００６０】
このダミーファイルにおいて、「Ｐｈｏｔｏ」用ダミーファイルと異なる点は、「ｕｒｌ＝」で設定されたリンク先がダミーファイルを生成する基となったファイル「ｔｅｍｐ．ｔｘｔ」である点である。
【００６１】
なお、その他のファイルに対して生成されるダミーファイル１８ａは、メタタグによって設定されたリンク先が、ダミーファイルを生成する基となった各々のファイルである他は、「ｔｅｍｐ．ｔｘｔ」用ダミーファイルと同じであるので、その説明を省略する。
【００６２】
図１に戻り、インデックスファイル生成処理モジュール１２ｃの説明を続ける。ｇｅｔコマンド処理モジュール１２ｂからインデックスファイル生成処理モジュール１２ｃが起動されると、ＣＰＵ１１は、「ｇｅｔ」コマンドで指定されたインデックスファイルがあるディレクトリと、そのディレクトリにあるサブディレクトリとに存在するファイル及びサブディレクトリを検出して、インデックスファイルを生成する。
【００６３】
この際、各々のファイル及びサブディレクトリについて図２（ｂ）及び図２（ｃ）で示したダミーファイル１８ａを生成し、また、画像ファイル、文書ファイル、及び図面ファイルが存在する場合には、各々のファイルについてサムネイルを生成する。そして、各々のファイル及びサブディレクトリの名称に、対応するダミーファイル１８ａへのリンクを設定するとともに、各々のファイルの名称に対応付けてサムネイルを貼付して、図２（ａ）のように表示されるインデックスファイルを生成する。
【００６４】
インデックスファイルが生成されると、ＣＰＵ１１はインデックスファイル生成処理モジュール１２ｃの実行を終了する。なお、ＣＰＵ１１は、インデックスファイルのあるディレクトリに、ファイルやサブディレクトリが存在しないと判断した場合は、ファイルが存在しないことを記載したインデックスファイルを生成して、インデックスファイル生成処理モジュール１２ｃの実行を終了する。
【００６５】
次に、ＲＡＭ１３は、ＣＰＵ１１が各種プログラムを実行する際に必要なデータを、一時的に記憶するための書換可能で揮発性のメモリである。このＲＡＭ１３には、ファイル・ディレクトリ記憶領域１３ａと、サムネイル記憶領域１３ｂと、インデックスファイル記憶領域１３ｃとが設けられている。
【００６６】
ファイル・ディレクトリ記憶領域１３ａは、ＣＰＵ１１がインデックスファイル生成処理モジュール１２ｃを実行する際に使用するメモリ領域で、メモリカード１８から取得した各ファイル及びサブディレクトリの名称に対し、各々に対応するダミーファイル１８ａのパスと、サムネイルを生成したファイルについてはそのサムネイルのパスとを関連付けて記憶する。そして、ファイル・ディレクトリ記憶領域１３ａに記憶されたデータを基にインデックスファイルが生成される。ファイル・ディレクトリ記憶領域１３ａは、インデックスファイルが生成されると解放される。
【００６７】
サムネイル記憶領域１３ｂは、ファイル・ディレクトリ記憶領域１３ａと同様に、ＣＰＵ１１がインデックスファイル生成処理モジュール１２ｃを実行する際に使用するメモリ領域で、画像ファイル、文書ファイル、及び図面ファイルについて生成されたサムネイルのデータを記憶する。そして、ファイル・ディレクトリ記憶領域１３ａの情報を基に、ファイルの名称に対応付けて、このサムネイル記憶領域１３ｂのサムネイルを貼付したインデックスファイルが生成される。インデックスファイルが生成されると、このサムネイル記憶領域１３ｂは解放される。
【００６８】
インデックスファイル記憶領域１３ｃは、インデックスファイルを一時的に記憶するメモリ領域である。ＣＰＵ１１が、インデックスファイル生成処理モジュール１２ｃに従ってインデックスファイルを生成すると、一旦インデックスファイル記憶領域１３ｃに記憶する。そして、このインデックスファイル記憶領域１３ｃに記憶されたインデックスファイルは、ＣＰＵ１１で実行されるｇｅｔコマンド処理モジュール１２ｂにより、ＰＣ２０へ転送される。そして、ＰＣ２０への転送が完了すると、このインデックスファイル記憶領域１３ｃは解放される。
【００６９】
ＬＡＮインターフェイス１４は、カードリーダ１０をＬＡＮ４０に接続するためのインターフェイスであり、カードリーダ１０は、このＬＡＮインターフェイス１４を介してＬＡＮ４０に接続されたＰＣ２０とデータの送受信を行う。
【００７０】
メモリカードインターフェイス１５は、カードリーダに設けられたカードスロット（図示せず）にメモリカード１８が装着された場合に、そのメモリカード１８の入出力仕様に従って、メモリカード１８のデータ読み出し及び書き込みを行うインターフェイスである。
【００７１】
メモリカード１８は、書き換えができると共に電源が遮断された場合でも記憶を保持するフラッシュメモリにより構成され、各社から種々のタイプのもの（例えば、ＳＤカードやｘＤカード）が提供されている。このメモリカード１８は、複数の階層を有するディレクトリ構造に従ってファイルが格納されるようになっている。
【００７２】
また、メモリカード１８には、インデックスファイル生成処理モジュール１２ｃによりファイル及びサブディレクトリの各々に対応して生成された、ダミーファイル１８ａが格納される。このダミーファイル１８ａのパスは、各ファイル及びサブディレクトリの名称に対応付けられて、一旦ファイル・サブディレクトリ記憶領域１３ａに記憶されるようになっている。
【００７３】
計時回路１６は、現在の日時を刻む内部時計を有しており、計時を開始した日時と現在の日時とを比較して所要時間を算出する既知の回路である。
【００７４】
次に、ＰＣ２０について説明する。ＰＣ２０は、ＷＷＷブラウザ２４ａによって、カードリーダ１０のカードスロット（図示せず）に装着されたメモリカードにアクセス可能なクライアント装置である。このＰＣ２０は、図１に示すように、ＣＰＵ２１、ＲＯＭ２２、ＲＡＭ２３、ハードディスク２４、ＬＡＮインターフェイス２５、キーボード２６、マウス２７、ＬＣＤ２８、及び計時回路２９を備えており、これらはバスライン３０を介して互いに接続されている。
【００７５】
ＣＰＵ２１は、ＲＯＭ２２、ＲＡＭ２３、及びハードディスク２４に記憶されるプログラムやデータ或いはＬＡＮインターフェイス２５を介して送受信される各種信号に従って、バスライン３０により接続された各部を制御する演算装置である。
【００７６】
ＲＯＭ２２は、ＰＣ２０に接続されたＲＡＭ２３、ハードディスク２４、キーボード２６、マウス２７、及びＬＣＤ２８の入出力を制御するプログラムであるＢＩＯＳ（Ｂａｓｉｃ  Ｉｎｐｕｔ／Ｏｕｔｐｕｔ  Ｓｙｓｔｅｍ）や、ＣＰＵ２１がＢＩＯＳを実行する際に参照する各種設定を記憶する書換不能なメモリである。ＲＡＭ２３は、ＣＰＵ２１が各種プログラムを実行する際に必要なプログラムやデータを一時的に記憶するための書換可能で揮発性のメモリである。
【００７７】
ハードディスク２４は、ＯＳやアプリケーションプログラムといったＣＰＵ２１により実行される各種プログラムや各種設定を記憶する、書換可能で不揮発性のメモリディスクである。このハードディスク２４には、ＷＷＷブラウザ２４ａと、キャッシュ２４ｂと、メモリカードアクセス指示ファイル２４ｃとが記憶されている。
【００７８】
ＷＷＷブラウザ２４ａは、ＣＰＵ２１によって実行されるプログラムで、ハイパーテキスト形式のファイルをＬＣＤ２８に表示するためのアプリケーションプログラムである。このＷＷＷブラウザ２４ａでは、ハイパーテキスト形式のファイル中に設定されたリンクをマウス２７によって選択可能に表示するようになっている。
【００７９】
ＷＷＷブラウザ２４ａは、マウス２７によってＷＷＷブラウザ２４ａに表示されたリンクが選択されると、ＷＷＷブラウザ２４ａは、ＦＴＰに従って、そのリンクで示されたパスに存在するファイルの転送命令（「ｇｅｔ」コマンド）を送信し、その転送命令に応じて返信されるファイル、若しくは「ＮＧ」コードを受信する。そして、受信したファイルを表示するか、「ＮＧ」コードを受信した場合はファイルが受信できなかった旨のエラーメッセージを表示する。
【００８０】
キャッシュ２４ｂは、ＷＷＷブラウザ２４ａが使用するメモリ領域であり、ＷＷＷブラウザ２４ａが転送命令（「ｇｅｔ」コマンド）によってファイルを受信した場合に、その受信したファイルをキャッシュ２４ｂに保存する。キャッシュ２４ｂに保存されたファイルはユーザから削除されない限り保存され続け、ＷＷＷブラウザ２４ａが再び同じファイルにアクセスする場合、サーバに対してそのファイルの転送命令を送信しなくても、キャッシュ２４ｂからそのファイルを読み出すことができる。これにより、ＷＷＷブラウザ２４ａにおけるファイルの高速読み出しを可能としている。
【００８１】
ただし、ＷＷＷブラウザ２４ａでは、受信したハイパーテキスト形式のファイルに、時上述したダミーファイルに記載されているような、キャッシュ２４ｂを使わずに指定されたファイルへアクセスすることを指示する指示情報があった場合、そのキャッシュ２４ｂからファイルを読み出さずに、直接サーバに対して指定されたファイルの転送命令を送信する。これにより、サーバから常に最新のファイルを受信することができるようになっている。
【００８２】
メモリカードアクセス指示ファイル２４ｃは、カードリーダ１０に装着されたメモリカード１８からルートディレクトリのインデックスファイル５０を受信するよう、ＷＷＷブラウザ２４ａに対して指示する指示情報が記載されたファイルである。このメモリカードアクセス指示ファイル２４ｃが、キーボード２６又はマウス２７により選択されると、ＷＷＷブラウザ２４ａが起動される。そして、ＷＷＷブラウザ２４ａはメモリカードアクセス指示ファイル２４ｃの指示情報に従い、ＦＴＰに則して、ルートディレクトリのインデックスファイル５０の転送命令（「ｇｅｔ」コマンド）をカードリーダ１０に対し送信する。
【００８３】
ここで、図３を参照してメモリカードアクセス指示ファイル２４ｃについて説明する。まず、図３（ａ）は、ＰＣ２０のＯＳによりＬＣＤ２８に表示されるデスクトップ環境の表示画面図である。図３（ａ）に示すように、このＯＳのデスクトップ環境には、メモリカードアクセス指示ファイル２４ｃのアイコン「メモリカードアクセス指示ファイル」が表示されている。ユーザは、キーボード２６若しくはマウス２７によってカーソルをアイコン「メモリカードアクセス指示ファイル」に合わせ、キーボード２６のエンターキー（図示せず）、若しくはマウス２７のクリックボタン（図示せず）を押すことにより、メモリカードアクセス指示ファイル２４ｃを選択することができる。
【００８４】
次に図３（ｂ）は、メモリカードアクセス指示ファイル２４ｃ「ｄｕｍｍｙ．ｈｔｍｌ」（以下、『「ｄｕｍｍｙ．ｈｔｍｌ」２４ｃ』と称する。）の内容を示す図である。この「ｄｕｍｍｙ．ｈｔｍｌ」２４ｃには、図２（ｂ）の「Ｐｈｏｔｏ」用ダミーファイルと同様のメタタグが記載されている。
【００８５】
このメタタグにおいて、「Ｐｈｏｔｏ」用ダミーファイルと異なる点は、「ｕｒｌ＝」で示されたパスが、メモリカード１８のルートディレクトリのインデックスファイル「／／ａａａ／＿ｉｎｄｅｘ．ｈｔｍｌ」である点である。これにより、メモリカードアクセス指示ファイル２４ｃが選択されると、ＷＷＷブラウザ２４ａは「ｄｕｍｍｙ．ｈｔｍｌ」２４ｃの内容に従って、０秒後に「／／ａａａ／＿ｉｎｄｅｘ．ｈｔｍｌ」の転送命令（「ｇｅｔ」コマンド）をカードリーダ１０に対して送信する。
【００８６】
なお、「ｕｒｌ＝」の後の「ｆｔｐ：」は、ＦＴＰに従って「／／ａａａ／＿ｉｎｄｅｘ．ｈｔｍｌ」の転送命令（「ｇｅｔ」コマンド）を送信するよう、ＷＷＷブラウザ２４ａに指示するためのものである。
【００８７】
図１に戻り、説明を続ける。ＬＡＮインターフェイス２５は、ＰＣ２０をＬＡＮ４０に接続するためのインターフェイスである。キーボード２６及びマウス２７は、ユーザがＰＣ２０に対して文字や指示を入力する入力デバイスである。ＬＣＤ２８は、ＣＰＵ２１によって実行されたプログラムの各種情報を表示する表示デバイスである。計時回路２９は、現在の日時を刻む内部時計を有しており、計時を開始した日時と現在の日時とを比較して所要時間を算出する既知の回路である。
【００８８】
次に、図４を参照してカードリーダ１０のＣＰＵ１１で実行されるｇｅｔコマンド処理モジュールの処理フローについて説明する。図４は、このｇｅｔコマンド処理モジュール１２ｂのフローチャートである。このモジュールは、上述したように、ＣＰＵ１１がＦＴＰサーバプログラム１２ａを実行中にＰＣ２０から「ｇｅｔ」コマンドが入力された場合に起動される。
【００８９】
このモジュールでは、まず、「ｇｅｔ」コマンドで指定されたファイル名の末尾が「＿ｉｎｄｅｘ．ｈｔｍｌ」と一致するかを確認する（Ｓ４１１）。ファイル転送システム１において、インデックスファイルのファイル名は「＿ｉｎｄｅｘ．ｈｔｍｌ」と決められている。よって、Ｓ４１１の処理により、「ｇｅｔ」コマンドで指定されたファイルがインデックスファイルであるかどうかを判断する。
【００９０】
そして、Ｓ４１１の処理で、「ｇｅｔ」コマンドで指定されたファイル名の末尾が「＿ｉｎｄｅｘ．ｈｔｍｌ」と一致する場合は（Ｓ４１１：Ｙｅｓ）、指定されたファイルはインデックスファイルであることから、後述のインデックスファイル生成処理モジュール１２ｃを実行する（Ｓ４１２）。これにより、所定のディレクトリのインデックスファイルが生成され、生成されたインデックスファイルはインデックスファイル記憶領域１３ｃに記憶される。また、Ｓ４１１の処理で、「ｇｅｔ」コマンドで指定されたファイル名の末尾が「＿ｉｎｄｅｘ．ｈｔｍｌ」と一致しない場合は（Ｓ４１１：Ｎｏ）、指定されたファイルがメモリカード１８にその実体が格納されたファイルであると判断し、そのファイルをメモリカード１８から読み出して、ファイルの実体を取得する（Ｓ４１３）。
【００９１】
Ｓ４１２の処理、又は、Ｓ４１３の処理の後、「ｇｅｔ」コマンドで指定されたファイルがＳ４１２の処理で生成できたか、又は、Ｓ４１３の処理で取得できたかを確認する（Ｓ４１４）。そして、指定されたファイルが生成又は取得できた場合は（Ｓ４１４：Ｙｅｓ）、「ＯＫ」コードとともに、Ｓ４１２の処理でインデックスファイル記憶領域１３ｃに記憶されたインデックスファイル、又は、Ｓ４１３の処理で取得したファイルを、ＰＣ２０へ返信する（Ｓ４１５）。そして、このモジュールの実行を終了する。これにより、「ｇｅｔ」コマンドで指定されたファイルをＰＣ２０へ転送することができる。
【００９２】
また、Ｓ４１４の処理で、「ｇｅｔ」コマンドで指定されたファイルが生成又は取得できなかったと判断した場合は（Ｓ４１４：Ｎｏ）、「ＮＧ」コードをＰＣ２０へ返信し（Ｓ４１６）、このモジュールの実行を終了する。これにより、ＰＣ２０のユーザに対して、「ｇｅｔ」コマンドで指定したファイルが存在しないことを知らせることができる。
【００９３】
このように、このｇｅｔコマンド処理モジュール１２ｂによって、ＰＣ２０から入力された「ｇｅｔ」コマンドに対する処理を実行し、「ｇｅｔ」コマンドで指定されたファイルがインデックスファイルである場合はインデックスファイルを生成し、メモリカード１８に格納されているファイルである場合は、メモリカード１８からそのファイルの実体を取得して、ＰＣ２０に転送することができる。
【００９４】
次に、図５のフローチャートを参照してカードリーダ１０のＣＰＵ１１で実行されるインデックスファイル生成処理モジュール１２ｃの処理フローについて説明する。図５は、このインデックスファイル生成処理モジュール１２ｃのフローチャートである。このモジュールでは、所定のディレクトリのインデックスファイルを生成し、生成したインデックスファイルをインデックスファイル記憶領域１３ｃに記憶する。
【００９５】
図５に示すように、このモジュールでは、まず、「ｇｅｔ」コマンドで指定されたインデックスファイルのパスから、インデックスファイルが存在する（実際には、存在するものとして取り扱われている）ディレクトリを特定し、それを親ディレクトリとして設定する（Ｓ５００）。
【００９６】
次に、親ディレクトリにファイルやサブディレクトリが存在するかを確認する（Ｓ５０１）。そして、ファイルもサブディレクトリも存在しない場合は（Ｓ５０１：Ｎｏ）、ファイルが存在しないことを記載したインデックスファイルを生成し、これをインデックスファイル記憶領域１３ｃに記憶して（Ｓ５０２）、このモジュールの実行を終了する。よって、このインデックスファイルがＷＷＷブラウザ２４ａに表示されれば、ＰＣ２０のユーザは、指定したディレクトリにファイルが存在しないことを認識することができる。
【００９７】
一方、Ｓ５０１の処理により、親ディレクトリにファイルやサブディレクトリが存在すると判断された場合（Ｓ５０１：Ｙｅｓ）、Ｓ５０３の処理に移行し、親ディレクトリと、親ディレクトリにあるサブディレクトリとに存在するファイル及びサブディレクトリの一覧の生成を開始する。
【００９８】
Ｓ５０３では、親ディレクトリを「指定ディレクトリ」として設定する。続くＳ５０４〜Ｓ５０８の処理は、この「指定ディレクトリ」に対して行われる。なお、この「指定ディレクトリ」には親ディレクトリの他に、後述のＳ５１０の処理により、親ディレクトリに存在するサブディレクトリも設定される。
【００９９】
Ｓ５０４では、指定ディレクトリにファイルやサブディレクトリが存在するかを確認する。そして、指定ディレクトリにファイルやサブディレクトリが存在する場合は（Ｓ５０４：Ｙｅｓ）、Ｓ５０５の処理へ移行し、その指定ディレクトリに対して、インデックスファイルの生成に必要なデータの準備を行う。一方、指定ディレクトリにファイルやサブディレクトリが存在しない場合は（Ｓ５０４：Ｎｏ）、その指定ディレクトリに対しインデックスファイルの生成に必要なデータの準備は不要であるので、Ｓ５０９へ移行する。
【０１００】
Ｓ５０５では、指定ディレクトリにあるファイル及びサブディレクトリを検出し、各々の名称とパスとをメモリカード１８から取得する。これにより、指定ディレクトリに存在する全てのファイル及びサブディレクトリの名称とパスとが取得される。
【０１０１】
続いて、指定ディレクトリにある各サブディレクトリと各ファイルについて、上述したダミーファイルを各々生成する（Ｓ５０６）。なお、Ｓ５０５の処理で取得したパスは、これらのダミーファイルを生成する際に、各々のダミーファイルに設定されるリンク先のパスとして用いられる。
【０１０２】
次に、指定ディレクトリにあるファイルのうち、画像ファイル、文書ファイル、図面ファイルについて、それぞれ画像若しくはページを縮小したサムネイルを生成し、サムネイル記憶領域１３ｂに記憶する（Ｓ５０７）。
【０１０３】
そして、指定ディレクトリにあるファイル及びサブディレクトリの各々の名称に対し、各々について生成したダミーファイルのパスと、サムネイルを生成したものについてはサムネイルのパスとをそれぞれ対応付けて、ファイル・ディレクトリ記憶領域１３ａに記憶する（Ｓ５０８）。これにより、指定ディレクトリに対して、インデックスファイルの生成に必要なデータの準備を終了し、Ｓ５０９の処理へ移行する
【０１０４】
Ｓ５０９では、親ディレクトリに存在する全てのサブディレクトリについて、Ｓ５０４の処理でファイル及びサブディレクトリの存在の有無を調べたかを確認する。そして、親ディレクトリ内に、ファイル及びサブディレクトリの存在の有無を調べていないサブディレクトリが存在する場合（Ｓ５０９：Ｎｏ）、そのサブディレクトリの１つを新たな指定ディレクトリに設定し（Ｓ５１０）、再びＳ５０４からＳ５０９までの処理を実行する。これにより、新たに設定された指定ディレクトリについて、その指定ディレクトリにファイルやサブディレクトリが存在するかが確認され（Ｓ５０４）、ファイルやサブディレクトリが存在する場合には（Ｓ５０４：Ｙｅｓ）、その指定ディレクトリに対して、インデックスファイルの生成に必要なデータの準備を行う（Ｓ５０５〜Ｓ５０８）。
【０１０５】
そして、Ｓ５０９の処理により、親ディレクトリに存在する全てのサブディレクトリについて、ファイル及びサブディレクトリの存在の有無が調べたことが確認される（Ｓ５０９：Ｙｅｓ）まで、Ｓ５０４からＳ５１０の処理を繰り返し実行する。これにより、親ディレクトリと、親ディレクトリに存在する全てのサブディレクトリについて、インデックスファイルの生成に必要なデータの準備を行う。
【０１０６】
一方、Ｓ５０９の処理で、親ディレクトリに存在する全てのサブディレクトリについて、ファイル及びサブディレクトリの存在の有無を調べたと判断されると（Ｓ５０９：Ｙｅｓ）、ファイル・ディレクトリ記憶領域１３ａに記憶された情報を基に、図２（ａ）に示すようなインデックスファイルを生成する（Ｓ５１１）。すなわち、Ｓ５１１では、ファイル・ディレクトリ記憶領域１３ａに記憶されたファイル及びサブディレクトリの各々の名称に、それぞれ対応するダミーファイルのリンクを設定し、また、サムネイルを生成したファイルに対し、各々のファイルの名称に対応付けてそれぞれのサムネイルを貼付した、インデックスファイルを生成する。そして、生成されたインデックスファイルをインデックスファイル記憶領域１３ｃに記憶した後、このインデックスファイル生成処理モジュール１２ｃを終了する。
【０１０７】
次に、図６を参照して、ファイル転送システム１の動作について説明する。図６は、ファイル転送システム１の動作の順序を示すシーケンスチャートである。図６に示すように、ファイル転送システム１では、まず、ＰＣ２０のユーザ７０が、ＰＣ２０のＬＣＤ２８に表示されたデスクトップ環境の表示画面から、「ｄｕｍｍｙ．ｈｔｍｌ」（メモリカードアクセス指示ファイル）２４ｃを選択すると、ＣＰＵ２１がＷＷＷブラウザ２４ａを起動し、ＷＷＷブラウザ２４ａに対し、「ｄｕｍｍｙ．ｈｔｍｌ」２４ｃが選択されたことを通知する（Ｓ６０１）。これを受けて、ＷＷＷブラウザ２４ａは、キャッシュ２４ｂに対し「ｄｕｍｍｙ．ｈｔｍｌ」２４ｃの転送命令を送信する（Ｓ６０２）。
【０１０８】
そして、キャッシュ２４ｂに「ｄｕｍｍｙ．ｈｔｍｌ」２４ｃが存在する場合、キャッシュ２４ｂはＷＷＷブラウザ２４ａに対して「ｄｕｍｍｙ．ｈｔｍｌ」２４ｃを転送する（Ｓ６０３）。なお、キャッシュ２４ｂに「ｄｕｍｍｙ．ｈｔｍｌ」２４ｃが存在しない場合は、キャッシュ２４ｂからＷＷＷブラウザ２４ａに対して「ｄｕｍｍｙ．ｈｔｍｌ」２４ｃの転送不可通知が送信される。この場合、ＷＷＷブラウザ２４ａは、ハードディスク２４から直接「ｄｕｍｍｙ．ｈｔｍｌ」２４ｃを読み出す。そして、読み出した「ｄｕｍｍｙ．ｈｔｍｌ」２４ｃをキャッシュ２４ｂに書き込む。
【０１０９】
続いて、ＷＷＷブラウザ２４ａは、「ｄｕｍｍｙ．ｈｔｍｌ」２４ｃの内容を解析する（Ｓ６０４）。そして、ＷＷＷブラウザ２４ａは「ｄｕｍｍｙ．ｈｔｍｌ」２４ｃの内容に従って、キャッシュを使わずに、メモリカード１８のルートディレクトリのインデックスファイル「＿ｉｎｄｅｘ．ｈｔｍｌ」の転送命令（「ｇｅｔ」コマンド）をカードリーダ１０に対して送信する（Ｓ６０５）。これにより、過去に、「＿ｉｎｄｅｘ．ｈｔｍｌ」がキャッシュ２４ｂに記憶された場合でも、カードリーダ１０に対して、最新の「＿ｉｎｄｅｘ．ｈｔｍｌ」を生成させることができる。
【０１１０】
続いて、カードリーダ１０では、インデックスファイル生成処理モジュール１２ｃによって、ルートディレクトリに存在するファイル及びサブディレクトリを検出して、「＿ｉｎｄｅｘ．ｈｔｍｌ」を生成し（Ｓ６０６）、これをＷＷＷブラウザ２４ａに返信する（Ｓ６０７）。そして、ＷＷＷブラウザ２４ａは、受信した「＿ｉｎｄｅｘ．ｈｔｍｌ」をユーザ７０に対し表示する（Ｓ６０８）。
【０１１１】
このように、カードリーダ１０において、ルートディレクトリに存在するファイル及びサブディレクトリを検出して、「＿ｉｎｄｅｘ．ｈｔｍｌ」を生成するので、ＷＷＷブラウザ２４ａには、ルートディレクトリに存在するファイル及びサブディレクトリを正確に表示させることができる。また、「＿ｉｎｄｅｘ．ｈｔｍｌ」の転送命令（「ｇｅｔ」コマンド）を受信する毎に、「＿ｉｎｄｅｘ．ｈｔｍｌ」を生成するので、そのときにルートディレクトリに存在するファイル及びサブディレクトリがインデックスファイルに反映される。よって、ＷＷＷブラウザ２４ａに対し、メモリカード１８に格納されているファイル及びサブディレクトリの最新の情報を表示させることができる。
【０１１２】
なお、ＷＷＷブラウザ２４ａに表示された「＿ｉｎｄｅｘ．ｈｔｍｌ」は、キャッシュ２４ｂに書き込まれる（Ｓ６０９）。ただし、上述した通り、「ｄｕｍｍｙ．ｈｔｍｌ」２４ｃによって、キャッシュ２４ｂに書き込まれた「＿ｉｎｄｅｘ．ｈｔｍｌ」が読み出されることなく、カードリーダ１０に対して「＿ｉｎｄｅｘ．ｈｔｍｌ」の転送命令（「ｇｅｔ」コマンド）が送信される。
【０１１３】
続いて、ユーザ７０が、ＷＷＷブラウザ２４ａに表示された「＿ｉｎｄｅｘ．ｈｔｍｌ」からファイルの名称「ｔｅｍｐ．ｔｘｔ」を選択すると（Ｓ６１０）、ＷＷＷブラウザ２４ａは、ファイルの名称「ｔｅｍｐ．ｔｘｔ」に対して設定されたリンクを基に、「ｔｅｍｐ．ｔｘｔ」用ダミーファイル「ｔｅｍｐ＿ｔｘｔ＿ｄｕｍｍｙ．ｈｔｍｌ」の転送命令を、キャッシュ２４ｂに対して送信する（Ｓ６１１）。
【０１１４】
そして、キャッシュ２４ｂに「ｔｅｍｐ．ｔｘｔ」用ダミーファイルが存在しない場合、キャッシュ２４ｂからＷＷＷブラウザ２４ａに対して「ｔｅｍｐ．ｔｘｔ」用ダミーファイルの転送不可通知が送信される（Ｓ６１２）。この場合、ＷＷＷブラウザ２４ａは、カードリーダ１０に対し、「ｔｅｍｐ．ｔｘｔ」用ダミーファイルの転送命令（「ｇｅｔ」コマンド）を送信する（Ｓ６１３）。そして、カードリーダ１０は、メモリカード１８に記憶された「ｔｅｍｐ．ｔｘｔ」用ダミーファイルを取得し、ＷＷＷブラウザ２４ａに転送する（Ｓ６１４）。ＷＷＷブラウザ２４ａは、「ｔｅｍｐ．ｔｘｔ」用ダミーファイルを受信すると、それをキャッシュ２４ｂに書き込む（Ｓ６１５）。
【０１１５】
なお、キャッシュ２４ｂに「ｔｅｍｐ．ｔｘｔ」用ダミーファイルが存在する場合は、キャッシュ２４ｂからＷＷＷブラウザ２４ａに対して「ｔｅｍｐ．ｔｘｔ」用ダミーファイルを転送する。「ｔｅｍｐ．ｔｘｔ」用ダミーファイルの内容は、図２（ｃ）で示した内容から変わることがないので、キャッシュ２４ｂに記憶された過去のファイルを使用しても問題とはならない。
【０１１６】
続いて、ＷＷＷブラウザ２４ａは、「ｔｅｍｐ．ｔｘｔ」用ダミーファイルの内容を解析する（Ｓ６１６）。そして、その内容に従って、キャッシュを使わずに、メモリカード１８のファイル「ｔｅｍｐ．ｔｘｔ」の転送命令（「ｇｅｔ」コマンド）をカードリーダ１０に対して送信する（Ｓ６１７）。カードリーダ１０は、この転送命令を受けて、メモリカード１８に記憶された「ｔｅｍｐ．ｔｘｔ」を取得し、ＷＷＷブラウザ２４ａに転送する（Ｓ６１８）。そして、ＷＷＷブラウザ２４ａは、「ｔｅｍｐ．ｔｘｔ」をユーザ７０に対して表示する（Ｓ６１９）。これにより、過去に、「ｔｅｍｐ．ｔｘｔ」がキャッシュ２４ｂに記憶された場合でも、カードリーダ１０から最新の「ｔｅｍｐ．ｔｘｔ」を読み出し、ユーザに対して表示させることができる。
【０１１７】
なお、ＷＷＷブラウザ２４ａに表示された「ｔｅｍｐ．ｔｘｔ」は、キャッシュ２４ｂに書き込まれる（Ｓ６２０）。しかし、「ｔｅｍｐ．ｔｘｔ」用ダミーファイルにより、そのキャッシュ２４ｂに書き込まれた「ｔｅｍｐ．ｔｘｔ」が読み出されることなく、カードリーダ１０に対して「ｔｅｍｐ．ｔｘｔ」の転送命令（「ｇｅｔ」コマンド）が送信される。
【０１１８】
一方、ユーザ７０が、ＷＷＷブラウザ２４ａに表示された「＿ｉｎｄｅｘ．ｈｔｍｌ」からサブディレクトリの名称「Ｐｈｏｔｏ」を選択すると（Ｓ６２１）、ＷＷＷブラウザ２４ａは、サブディレクトリの名称「Ｐｈｏｔｏ」に対して設定されたリンクを基に、「Ｐｈｏｔｏ」用ダミーファイル「Ｐｈｏｔｏ＿ｄｕｍｍｙ．ｈｔｍｌ」の転送命令を、キャッシュ２４ｂに対して送信する（Ｓ６２２）。
【０１１９】
そして、キャッシュ２４ｂに「Ｐｈｏｔｏ」用ダミーファイルが存在する場合は、キャッシュ２４ｂからＷＷＷブラウザ２４ａに対して「Ｐｈｏｔｏ」用ダミーファイルを転送する（Ｓ６２３）。「Ｐｈｏｔｏ」用ダミーファイルの内容は、図２（ｂ）で示した内容から変わることがないので、キャッシュ２４ｂに記憶された過去のファイルを使用しても問題とはならない。
【０１２０】
なお、キャッシュ２４ｂに「Ｐｈｏｔｏ」用ダミーファイルが存在しない場合は、「ｔｅｍｐ．ｔｘｔ」用ダミーファイルについて行ったＳ６１３〜Ｓ６１５の処理を、「Ｐｈｏｔｏ」用ダミーファイルについて行う。
【０１２１】
続いて、ＷＷＷブラウザ２４ａは、「Ｐｈｏｔｏ」用ダミーファイルの内容を解析する（Ｓ６２４）。そして、ＷＷＷブラウザ２４ａは「Ｐｈｏｔｏ」用ダミーファイルの内容に従って、キャッシュを使わずに、サブディレクトリ「Ｐｈｏｔｏ」のインデックスファイル「Ｐｈｏｔｏ／＿ｉｎｄｅｘ．ｈｔｍｌ」の転送命令（「ｇｅｔ」コマンド）をカードリーダ１０に対して送信する（Ｓ６２５）。
【０１２２】
これにより、キャッシュ２４ｂに、「Ｐｈｏｔｏ／＿ｉｎｄｅｘ．ｈｔｍｌ」が過去に記憶されていた場合でも、カードリーダ１０に対して、最新の「Ｐｈｏｔｏ／＿ｉｎｄｅｘ．ｈｔｍｌ」を生成させることができる。
【０１２３】
続いて、カードリーダ１０では、インデックスファイル生成処理モジュール１２ｃによって、サブディレクトリ「Ｐｈｏｔｏ」に存在するファイル及びサブディレクトリを検出して、「Ｐｈｏｔｏ／＿ｉｎｄｅｘ．ｈｔｍｌ」を生成し（Ｓ６２６）、これをＷＷＷブラウザ２４ａに返信する（Ｓ６２７）。そして、ＷＷＷブラウザ２４ａは、受信した「Ｐｈｏｔｏ／＿ｉｎｄｅｘ．ｈｔｍｌ」をユーザ７０に対し表示する（Ｓ６２８）。
【０１２４】
このように、カードリーダ１０において、サブディレクトリ「Ｐｈｏｔｏ」に存在するファイル及びサブディレクトリを検出して、「Ｐｈｏｔｏ／＿ｉｎｄｅｘ．ｈｔｍｌ」を生成するので、ＷＷＷブラウザ２４ａには、サブディレクトリ「Ｐｈｏｔｏ」に存在するファイル及びサブディレクトリを正確に表示させることができる。また、「Ｐｈｏｔｏ／＿ｉｎｄｅｘ．ｈｔｍｌ」の転送命令（「ｇｅｔ」コマンド）を受信する毎に、「Ｐｈｏｔｏ／＿ｉｎｄｅｘ．ｈｔｍｌ」を生成するので、そのときにサブディレクトリ「Ｐｈｏｔｏ」に存在するファイル及びサブディレクトリがインデックスファイルに反映される。よって、ＷＷＷブラウザ２４ａに対し、メモリカード１８に格納されているファイル及びサブディレクトリの最新の情報を表示させることができる。
【０１２５】
なお、ＷＷＷブラウザ２４ａに表示された「Ｐｈｏｔｏ／＿ｉｎｄｅｘ．ｈｔｍｌ」は、キャッシュ２４ｂに書き込まれる（Ｓ６２９）。しかし、「Ｐｈｏｔｏ」用ダミーファイルによって、上述の通り、そのキャッシュ２４ｂに書き込まれた「Ｐｈｏｔｏ／＿ｉｎｄｅｘ．ｈｔｍｌ」が読み出されることなく、カードリーダ１０に対して「Ｐｈｏｔｏ／＿ｉｎｄｅｘ．ｈｔｍｌ」の転送命令（「ｇｅｔ」コマンド）が送信される。
【０１２６】
以上説明したように、第１実施形態のファイル転送システム１では、カードリーダ１０がインデックスファイル生成処理モジュールによって、所定のディレクトリに存在するファイル及びサブディレクトリを検出してからインデックスファイルを生成するので、そのインデックスファイルにより、所定のディレクトリに存在するファイル及びサブディレクトリを正確にＷＷＷブラウザ２４ａに表示させることができる。よって、そのインデックスファイルに設定されたリンクによって、ＷＷＷブラウザ２４ａから所望のファイルにアクセスさせることができる。従って、ＰＣ２０からカードリーダ１０に装着されたメモリカード１８に格納されているファイルへ確実にアクセスさせることができる。
【０１２７】
また、インデックスファイルによって、所定のディレクトリに存在するファイル及びサブディレクトリを正確にＷＷＷブラウザ２４ａに表示させることができるので、ＰＣ２０のユーザは、所定のディレクトリに存在するファイル及びサブディレクトリの内容を、インデックスファイルに記載された各々の名称によって推定することができる。よって、ユーザに対して効率的に所望のファイルやサブディレクトリを確認させることができる。
【０１２８】
更に、カードリーダ１０でハイパーテキスト形式のインデックスファイルを生成してＷＷＷブラウザ２４ａに送信するので、ＰＣ２０がハイパーテキスト形式のファイルに対応したＷＷＷブラウザ２４ａを備えていれば、そのインデックスファイルを表示させることができる。よって、異なる種類のＷＷＷブラウザ２４ａを用いても、同じ使用感でファイルへのアクセスを行わせることができる。
【０１２９】
また、カードリーダ１０は、所定のディレクトリのインデックスファイルの転送命令を受信した場合に、その所定のディレクトリのインデックスファイルを生成するので、インデックスファイルの転送命令を受信したときに所定のディレクトリに存在するファイル及びサブディレクトリがインデックスファイルに反映される。よって、ＷＷＷブラウザ２４ａに対し、メモリカード１８に格納されているファイル及びサブディレクトリの最新の情報を表示させることができる。
【０１３０】
また、カードリーダ１０は、所定のディレクトリに存在するサブディレクトリの名称に対し、各々のサブディレクトリのインデックスファイルへのリンクが設定されたインデックスファイルを生成するので、ユーザがＷＷＷブラウザ２４ａに表示されたインデックスファイルからサブディレクトリの名称を選択すると、そのサブディレクトリのインデックスファイルがカードリーダ１０で生成され、ＷＷＷブラウザ２４ａにそのインデックスファイルが表示される。よって、ＷＷＷブラウザ２４ａに対し、サブディレクトリに存在するファイルやサブディレクトリを正確かつ容易に表示させることができるので、ＰＣ２０に対し、下層のサブディレクトリに格納されているファイルへのアクセスを容易に行わせることができる。
【０１３１】
また、カードリーダ１０は、インデックスファイルの中でファイル及びサブディレクトリのリンク先として各々設定したダミーファイルによって、ＷＷＷブラウザ２４ａに対しキャッシュを使わずに直接メモリカード１８のファイル若しくはサブディレクトリにアクセスするよう指示することができる。よって、ＷＷＷブラウザ２４ａでファイル若しくはサブディレクトリの名称が選択された場合、そのファイル若しくはサブディレクトリについて過去のデータがキャッシュに記憶されていた場合であっても、ＰＣ２０からメモリカード１８の最新のファイル若しくはサブディレクトリへアクセスさせることができる。
【０１３２】
また、カードリーダ１０は、所定のディレクトリとその所定のディレクトリにあるサブディレクトリとについて、各々のディレクトリ及びサブディレクトリに存在するファイル及びサブディレクトリを検出し、それらの一覧が記載されたインデックスファイルを生成するので、ユーザが所定のディレクトリと所定のディレクトリにあるサブディレクトリとに存在するファイル及びサブディレクトリの一覧を一度のインデックスファイル転送命令で確認することができる。また、サブディレクトリに存在するファイルやサブディレクトリに設定されたリンクを用いて、それらにアクセスすることができる。よって、ＰＣ２０のユーザに対し、メモリカード１８の下層のサブディレクトリに格納されている所望のファイルを少ない操作で発見させ、そのファイルへのアクセスを容易に行わせることができる。
【０１３３】
また、カードリーダ１０は、画像、文書、及び図面ファイルについて各々サムネイルを生成し、ファイルの名称に対応させて各々のサムネイルを貼付してインデックスファイルを生成するので、ＰＣ２０のユーザは、ＷＷＷブラウザ２４ａに表示されたインデックスファイルから、各々のファイルのサムネイルにより、その内容を確認することができる。よって、ＰＣ２０に対し、メモリカード１８に格納されているファイルの内容を容易に確認させることができる。
【０１３４】
次に、図１、及び図７から図９を参照して、第２実施形態におけるファイル転送システム１について説明する。この第２実施形態のファイル転送システム１において、カードリーダ１０は、ＰＣ２０との間でハイパーテキスト転送プロトコル（ＨＴＴＰ：Ｈｙｐｅｒｔｅｘｔ  Ｔｒａｎｓｆｅｒ  Ｐｒｏｔｏｃｏｌ）に従った通信を行う。そして、ＬＡＮ４０を介してメモリカード１８に格納されたファイルをＰＣ２０へ転送する。このとき、カードリーダ１０は、ＨＴＴＰのヘッダ領域に「ファイルのキャッシュを行わない」というＷＷＷブラウザ２４ａに対する命令を付加して送信する。
【０１３５】
この第２実施形態におけるファイル転送システム１の電気的構成は、上述した第１実施形態とほぼ同一であるので、その図示を省略し、以下、図１を参照しながら、第１実施形態と異なる点を説明する。
【０１３６】
この第２実施形態において、ＲＯＭ１２には、第１実施形態のＦＴＰサーバプログラム１２ａの代わりに、ＨＴＴＰサーバプログラムが記憶されている。このＨＴＴＰサーバプログラムは、ＰＣ２０との間でＨＴＴＰに従った通信を行う際にＣＰＵ１１によって実行されるプログラムであり、その処理内容は通信プロトコルとしてＨＴＴＰに従うことを除いて、ＦＴＰサーバプログラム１２ａと同一である。
【０１３７】
また、ＲＯＭ１２には、第１実施形態のＦＴＰサーバプログラム１２ａと同様、ＨＴＴＰサーバプログラムと連動するｇｅｔコマンド処理モジュール１２ｂが記憶され、また、ｇｅｔコマンド処理モジュール１２ｂと連動するインデックスファイル生成処理モジュール１２ｃが記憶されている。
【０１３８】
第２実施形態のｇｅｔコマンド処理モジュール１２ｂは、ＨＴＴＰの「ｇｅｔ」コマンドに対する処理をＣＰＵ１１に実行させるためのプログラムであり、ＨＴＴＰサーバプログラムと連動するモジュールである。ＨＴＴＰの「ｇｅｔ」コマンドは、ＦＴＰの「ｇｅｔ」コマンドと同様に、ＰＣ２０が指定したファイルの転送をカードリーダ１０に対して指示する転送命令である。ＣＰＵ１１は、ＨＴＴＰサーバプログラムの実行中にＰＣ２０から「ｇｅｔ」コマンドを受信すると、ＣＰＵ１１はこのｇｅｔコマンド処理モジュール１２ｂの実行を開始する。そして、「ｇｅｔ」コマンドで指定されたファイルをＰＣ２０に返信するか、エラーコードを返信すると、このモジュールの実行を終了する。
【０１３９】
この第２実施形態のｇｅｔコマンド処理モジュール１２ｂにおいて、第１実施形態のｇｅｔコマンド処理モジュール１２ｂと異なる点は、まず、「ｇｅｔ」コマンドで指定されたファイルがインデックスファイルであった場合、後述する第２実施形態のインデックスファイル生成処理モジュール１２ｃを実行する点である。また、「ｇｅｔ」コマンドで指定されたファイルをＰＣ２０に対して返信する際、ＨＴＴＰのヘッダ領域に「ファイルのキャッシュを行わない」というＷＷＷブラウザ２４ａに対する命令を付加して送信する。更に、「ｇｅｔ」コマンドで指定されたファイルがインデックスファイル生成処理モジュールで生成できなかった場合、若しくは、メモリカード１８からファイルの実体を取得できなかった場合は、ＨＴＴＰのエラーコードをＰＣ２０へ返信する点が異なる。
【０１４０】
ここで、図７（ａ）を参照して、第２実施形態において、「ｇｅｔ」コマンドで指定されたファイルをＰＣ２０へ転送する際にＨＴＴＰのヘッダ領域に付加される命令の内容について説明する。図７(ａ)は、このＨＴＴＰのヘッダ領域の内容を示した図である。
【０１４１】
図７(ａ)のように、ＨＴＴＰのヘッダ領域には、「Ｃａｃｈｅ−Ｃｏｎｔｒｏｌ：ｎｏ−ｃｈａｃｈｅ」と、「Ｐｒａｇｍａ：ｎｏ−ｃｈａｃｈｅ」という２つのＨＴＴＰヘッダが付加される。これらはともに、ＷＷＷブラウザ２４ａに対して、ファイルのキャッシュを行わないよう命令するためのＨＴＴＰヘッダである。なお、「Ｃａｃｈｅ−Ｃｏｎｔｒｏｌ：ｎｏ−ｃｈａｃｈｅ」は、ＨＴＴＰの第１．１版に対応したＨＴＴＰヘッダであり、「Ｐｒａｇｍａ：ｎｏ−ｃｈａｃｈｅ」は、ＨＴＴＰの第１．０版に対応したＨＴＴＰヘッダである。ＷＷＷブラウザ２４ａのサポートするＨＴＴＰの版がどちらであっても対応できるように、これら２つのＨＴＴＰヘッダを付加する。
【０１４２】
図１に戻って、説明を続ける。第２実施形態のインデックスファイル生成処理モジュール１２ｃは、第１実施形態のインデックスファイル生成処理モジュール１２ｃと同様、インデックスファイルを生成する処理をＣＰＵ１１に実行させるためのプログラムであり、第２実施形態のｇｅｔコマンド処理モジュール１２ｂと連動するモジュールである。ＣＰＵ１１は、第２実施形態のｇｅｔコマンド処理モジュール１２ｂを実行中に「ｇｅｔ」コマンドで指定されたファイルがインデックスファイルであることを判断した場合に、インデックスファイル生成処理モジュール１２ｃの実行を開始する。そして、インデックスファイル記憶領域１３ｃに、生成したインデックスファイルを記憶すると、このモジュールの実行を終了する。
【０１４３】
ここで、第２実施形態のインデックスファイル生成処理モジュール１２ｃにおいて、第１実施形態のインデックスファイル生成処理モジュール１２ｃと異なる点は、第２実施形態では、各ファイルの名称には対応するファイルの実体へのリンクを直接設定し、各サブディレクトリの名称には対応するサブディレクトリに存在する（実際には存在するとして取り扱う）インデックスファイルへのリンクを直接設定したインデックスファイルを生成する点である。
【０１４４】
このように、第２実施形態ではダミーファイルが不要であるので、メモリカード１８にダミーファイルを保存する領域は不要である。
【０１４５】
次に、第２実施形態のＰＣ２０について、第１実施形態のＰＣ２０と異なる点を説明する。第１実施形態のＷＷＷブラウザ２４ａは、ＦＴＰに従ってリンク先のサーバと接続したが、第２実施形態のＷＷＷブラウザ２４ａは、ＨＴＴＰに従ってリンク先のサーバと接続する。すなわち、第２実施形態のＷＷＷブラウザ２４ａは、表示ファイル中に設定されたリンクが選択されると、ＨＴＴＰに従って、そのリンクで示されたパスに存在するファイルの転送命令（「ｇｅｔ」コマンド）を送信し、その転送命令に応じて返信されるファイル、若しくはエラーコードを受信する。
【０１４６】
メモリカードアクセス指示ファイル２４ｃは、ＷＷＷブラウザ２４ａに対し、ＨＴＴＰによってメモリカード１８のルートディレクトリの「＿ｉｎｄｅｘ．ｈｔｍｌ」にアクセスするよう指示する指示情報が記載されたファイルである。ユーザからこのメモリカードアクセス指示ファイル２４ｃが選択されると、ＷＷＷブラウザ２４ａが起動され、ＷＷＷブラウザ２４ａは、ＨＴＴＰに従って、「＿ｉｎｄｅｘ．ｈｔｍｌ」の転送命令をカードリーダ１０へ送信する。
【０１４７】
次に、図７（ｂ）を参照して、第２実施形態におけるｇｅｔコマンド処理モジュール１２ｂの処理フローについて説明する。なお、上述した第１実施形態と同一の部分には同一の符号を付して、その説明を省略する。
【０１４８】
この処理において、Ｓ４１１、Ｓ４１３、Ｓ４１４の処理は、上述した第１実施形態のｇｅｔコマンド処理モジュール１２ｂ（図４（ｂ）参照）と同様の処理を行い、Ｓ４１１の処理により確認した結果、「ｇｅｔ」コマンドで指定されたファイル名の末尾が「＿ｉｎｄｅｘ．ｈｔｍｌ」と一致する場合は（Ｓ４１１：Ｙｅｓ）、指定されたファイルがインデックスファイルであるので、第２実施形態のインデックスファイル生成処理モジュール１２ｃを実行する（Ｓ７１１）。これにより、ファイルには対応するファイルへのリンクが直接設定され、サブディレクトリには、対応するサブディレクトリに存在するインデックスファイルへのリンクが直接設定されたインデックスファイルが生成される。Ｓ７１１の処理の後、Ｓ４１４へ移行する。
【０１４９】
また、Ｓ４１４の処理により確認した結果、指定されたファイルが生成又は取得できた場合は（Ｓ４１４：Ｙｅｓ）、ＨＴＴＰのヘッダ領域に「ファイルのキャッシュを行わない」というＷＷＷブラウザ２４ａに対する命令を付加して、ＨＴＴＰの「ＯＫ」コードと「ｇｅｔ」コマンドで指定されたファイルとをＰＣ２０に対して返信し（Ｓ７１２）、このモジュールの実行を終了する。これにより、ＷＷＷブラウザ２４ａは、「ｇｅｔ」コマンドで指定したファイルを受信した際に、このファイルをキャッシュに記憶しない。
【０１５０】
一方、Ｓ４１４の処理により確認した結果、指定されたファイルが生成又は取得できなかった場合は（Ｓ４１４：Ｎｏ）、ＨＴＴＰのエラーコードをＰＣ２０に対して返信し（Ｓ７１３）、このモジュールの実行を終了する。これにより、ＰＣ２０のユーザに対して、「ｇｅｔ」コマンドで指定したファイルが存在しないことを知らせることができる。
【０１５１】
次に、図８を参照して、第２実施形態のインデックスファイル生成処理モジュールの処理フローについて説明する。なお、上述した第１実施形態と同一の部分には同一の符号を付して、その説明を省略する。
【０１５２】
この処理において、Ｓ５００〜Ｓ５０５、Ｓ５０７、Ｓ５０９、及びＳ５１０の処理は、上述した第１実施形態のインデックスファイル生成処理モジュール（図５参照）と同様の処理を行う。そして、Ｓ５０５の処理の後、指定ディレクトリにある各サブディレクトリのパスにおいて、それぞれ最後に「／＿ｉｎｄｅｘ．ｈｔｍｌ」を付加して、これを各々のサブディレクトリの新たなパスとする（Ｓ８０１）。これにより、各々のサブディレクトリのパスを、そのサブディレクトリに存在する（実際には、存在すると取り扱う）インデックスファイルのパスに置き換える。Ｓ８０１の処理の後、Ｓ５０７へ移行する。
【０１５３】
そして、Ｓ５０７の処理の後、指定ディレクトリにあるファイル及びサブディレクトリの各々の名称に対し、各々のファイル及びサブディレクトリのパスと、サムネイルを生成したものについてはサムネイルのパスとをそれぞれ対応付けて、ファイル・ディレクトリ記憶領域１３ａに記憶し（Ｓ８０２）、Ｓ５０９へ移行する。
【０１５４】
そして、Ｓ５０９の処理で確認した結果、親ディレクトリに存在する全てのサブディレクトリについて、ファイル及びサブディレクトリの存在の有無を調べたと判断した場合（Ｓ５０９：Ｙｅｓ）、ファイル・ディレクトリ記憶領域１３ａに記憶された情報を基に、インデックスファイルを生成する（Ｓ８０２）。すなわち、Ｓ８０２では、ファイル・ディレクトリ記憶領域１３ａに記憶されたファイル及びサブディレクトリの各々の名称に、各々のファイル若しくはサブディレクトリのインデックスファイルへの直接的なリンクを設定し、また、サムネイルを生成したファイルに対し、各々のファイルの名称に対応付けてそれぞれのサムネイルを貼付した、インデックスファイルを生成する。そして、生成されたインデックスファイルをインデックスファイル記憶領域１３ｃに記憶した後、このインデックスファイル生成処理モジュール１２ｃを終了する。
【０１５５】
これにより、ＷＷＷブラウザ２４ａに表示されたインデックスファイルから、ユーザがマウス２７によってファイル若しくはサブディレクトリの名称をクリックすると、ダミーファイルを読み出すことなく、対応するファイル、若しくは、対応するサブディレクトリのインデックスファイルの転送命令をカードリーダ１０に対して送信する。従って、第１実施形態と比較して、所望のファイル若しくはサブディレクトリへ素早くアクセスすることができる。
【０１５６】
次に、図９を参照して、第２実施形態のファイル転送システム１の動作について説明する。図９は、第２実施形態におけるファイル転送システム１の動作の順序を示すシーケンスチャートである。なお、上述した第１実施形態と同一の部分には同一の符号を付して、その説明を省略する。
【０１５７】
図９に示すように、第２実施形態のファイル転送システム１では、まず、ＰＣ２０のユーザ７０が、デスクトップ環境の表示画面から、メモリカードアクセス指示ファイル２４ｃを選択すると、ＣＰＵ２１がＷＷＷブラウザ２４ａを起動し、ＷＷＷブラウザ２４ａに対してメモリカードアクセス指示ファイル２４ｃが選択されたことを通知する（Ｓ９０１）。
【０１５８】
そして、ＷＷＷブラウザ２４ａは、メモリカードアクセス指示ファイル２４ｃの内容に従って、メモリカード１８のルートディレクトリのインデックスファイル「＿ｉｎｄｅｘ．ｈｔｍｌ」にアクセスするために、まずキャッシュ２４ｂに対して「＿ｉｎｄｅｘ．ｈｔｍｌ」の転送命令を送信する（Ｓ９０２）。
【０１５９】
しかし、後述する理由により、キャッシュ２４ｂには「＿ｉｎｄｅｘ．ｈｔｍｌ」が存在しないので、キャッシュ２４ｂはＷＷＷブラウザ２４ａに対し、「＿ｉｎｄｅｘ．ｈｔｍｌ」の転送不可通知を送信する（Ｓ９０３）。
【０１６０】
続く、Ｓ６０５〜Ｓ６０８では、上述した第１実施形態のファイル転送システム１と同様の処理が行われる。ただし、Ｓ６０７において、カードリーダ１０はＷＷＷブラウザ２４ａに対してＨＴＴＰのヘッダ領域に記載された「ファイルのキャッシュを行わない」という命令も合わせて送信するので、ＷＷＷブラウザ２４ａは受信した「＿ｉｎｄｅｘ．ｈｔｍｌ」をキャッシュ２４ｂに保存しない。よって、以後、ＷＷＷブラウザ２４ａが「＿ｉｎｄｅｘ．ｈｔｍｌ」にアクセスする場合、キャッシュ２４ｂに「＿ｉｎｄｅｘ．ｈｔｍｌ」が存在しないので、必ず、カードリーダ１０に対して「＿ｉｎｄｅｘ．ｈｔｍｌ」の転送命令（「ｇｅｔ」コマンド）を送信する。従って、ＷＷＷブラウザ２４ａは最新の「＿ｉｎｄｅｘ．ｈｔｍｌ」をカードリーダ１０から受信することができる。
【０１６１】
次に、Ｓ６１０、Ｓ６１７〜Ｓ６１９、Ｓ６２１、Ｓ６２５〜Ｓ６２８の処理も、上述した第１実施形態のファイル転送システム１と同様の処理が行われる。ただし、Ｓ６１８及びＳ６２７において、カードリーダ１０はＷＷＷブラウザ２４ａに対してＨＴＴＰのヘッダ領域に記載された「ファイルのキャッシュを行わない」という命令も合わせて送信するので、ＷＷＷブラウザ２４ａは受信したファイル「ｔｅｍｐ．ｔｘｔ」やインデックスファイル「Ｐｈｏｔｏ／＿ｉｎｄｅｘ．ｈｔｍｌ」をキャッシュ２４ｂに保存しない。よって、ＷＷＷブラウザ２４ａがテキスト「ｔｅｍｐ．ｔｘｔ」にアクセスする場合、キャッシュ２４ｂに対して「ｔｅｍｐ．ｔｘｔ」の転送命令を要求しても（Ｓ９０４）、キャッシュ２４ｂは必ず「ｔｅｍｐ．ｔｘｔ」の転送不可通知をＷＷＷブラウザ２４ａに送信する（Ｓ９０５）。これにより、ＷＷＷブラウザ２４ａは必ずカードリーダ１０に対して「ｔｅｍｐ．ｔｘｔ」の転送命令（「ｇｅｔ」コマンド）を送信する（Ｓ６１７）。
【０１６２】
また、ＷＷＷブラウザ２４ａが「Ｐｈｏｔｏ／＿ｉｎｄｅｘ．ｈｔｍｌ」にアクセスする場合も同様に、キャッシュ２４ｂに対して「Ｐｈｏｔｏ／＿ｉｎｄｅｘ．ｈｔｍｌ」の転送命令を要求しても（Ｓ９０６）、キャッシュ２４ｂは必ず「Ｐｈｏｔｏ／＿ｉｎｄｅｘ．ｈｔｍｌ」の転送不可通知をＷＷＷブラウザ２４ａに送信する（Ｓ９０７）。これにより、ＷＷＷブラウザ２４ａは必ずカードリーダ１０に対して「Ｐｈｏｔｏ／＿ｉｎｄｅｘ．ｈｔｍｌ」の転送命令（「ｇｅｔ」コマンド）を送信する（Ｓ６２５）。従って、ＷＷＷブラウザ２４ａは最新の「ｔｅｍｐ．ｔｘｔ」や「Ｐｈｏｔｏ／＿ｉｎｄｅｘ．ｈｔｍｌ」をカードリーダ１０から受信することができる。
【０１６３】
以上説明したように、第２実施形態のファイル転送システム１では、カードリーダ１０からＰＣ２０のＷＷＷブラウザ２４ａへファイルを送信する場合に、カードリーダ１０は、ＨＴＴＰのヘッダ領域に「ファイルのキャッシュを行わない」というＷＷＷブラウザ２４ａに対する命令を付加し、その命令を送信する。これにより、ＷＷＷブラウザ２４ａからカードリーダ１８に格納されたファイルに繰り返しアクセスが行われる場合でも、そのファイルがキャッシュに記憶されないので、ＰＣ１０はメモリカード１８に格納されたファイルへ常に直接アクセスすることができる。よって、ＰＣ２０からメモリカード１８に格納された最新のファイルへアクセスさせることができる。
【０１６４】
次に、図１０から図１３を参照して、第３実施形態におけるファイル転送システム１について説明する。上述した第１実施形態のファイル転送システム１において、カードリーダ１０は、所定のディレクトリと、所定のディレクトリにあるサブディレクトリとに存在するファイル及びサブディレクトリの各々についてダミーファイル１８ａを生成し、各々のファイル及びサブディレクトリの名称に、対応するダミーファイル１８ａへのリンクを設定してインデックスファイルを生成した。これに対し、第３実施形態のファイル転送システム１では、カードリーダ１０が、インデックスファイルを生成する時の日時分秒Ｙを計時回路１６から取得する。そして、ファイルとサブディレクトリにあるインデックスファイルとの各々のパスに、日時分秒Ｙを含む文字列「＿ｔｅｍｐＹ」を付加したものを、各々の新しいパスとする。そして、各ファイル及びサブディレクトリの名称に、その新しいパスへのリンクを各々設定したインデックスファイルを生成する。
【０１６５】
図１０は、第３実施形態におけるファイル転送システム１の電気的構成を示すブロック図である。なお、上述した第１実施形態と同一の部分には同一の符号を付して、その説明を省略する。
【０１６６】
この第３実施形態のカードリーダ１０において、ＲＯＭ１２には、第１実施形態のｇｅｔコマンド処理モジュール１２ｂとインデックスファイル生成処理モジュール１２ｃのかわりに、ｇｅｔコマンド処理モジュール１２ｄとインデックスファイル生成処理モジュール１２ｅが記憶されている。
【０１６７】
ｇｅｔコマンド処理モジュール１２ｄは、ＦＴＰの「ｇｅｔ」コマンドに対する処理をＣＰＵ１１に実行させるためのプログラムであり、第１実施形態のｇｅｔコマンド処理モジュール１２ｂと同様、ＦＴＰサーバプログラム１２ａと連動するモジュールである。そして、ＣＰＵ１１は、ＦＴＰサーバプログラムの実行中にＰＣ２０から「ｇｅｔ」コマンドを受信すると、ＣＰＵ１１はこのｇｅｔコマンド処理モジュール１２ｄの実行を開始する。そして、「ｇｅｔ」コマンドで指定されたファイルをＰＣ２０に返信するか、「ＮＧ」コードを返信すると、このモジュールの実行を終了する。
【０１６８】
この第３実施形態のｇｅｔコマンド処理モジュール１２ｄにおいて、第１実施形態のｇｅｔコマンド処理モジュール１２ｂと異なる点は、まず、「ｇｅｔ」コマンドで指定されたファイルの末尾が「＿ｉｎｄｅｘ＿ｔｅｍｐＮ．ｈｔｍｌ」（Ｎは任意の値）である場合に、指定ファイルがインデックスファイルと判断し、そうでない場合は、メモリカード１８に格納されたファイルと判断する点である。これにより、インデックスファイルのパス名に、日時分秒を含む文字列「＿ｔｅｍｐＮ．ｈｔｍｌ」が付加されていた場合であっても、それをインデックスファイルとして認識することができる。
【０１６９】
また、「ｇｅｔ」コマンドで指定されたファイルがインデックスファイルであった場合、後述する第３実施形態のインデックスファイル生成処理モジュール１２ｅを実行する。更に、「ｇｅｔ」コマンドで指定されたファイルがインデックスファイルでない場合に、指定ファイルのパスに、上述の日時分秒を含む文字列「＿ｔｅｍｐＮ」が含まれるとき、指定ファイル名のパスからその日時分秒を含む文字列「＿ｔｅｍｐＮ」を削除したものを、正しい指定ファイルのパスとして認識する。これにより、インデックスファイル中に、日時分秒を含む文字列を付加したパスによって各々のファイルへのリンクを設定した場合であっても、所望のファイルに正しくアクセスすることが可能となる。
【０１７０】
インデックスファイル生成処理モジュール１２ｅは、第１実施形態のインデックスファイル生成処理モジュール１２ｃと同様、インデックスファイルを生成する処理をＣＰＵ１１に実行させるためのプログラムであり、第３実施形態のｇｅｔコマンド処理モジュール１２ｄと連動するモジュールである。そして、ＣＰＵ１１は、第３実施形態のｇｅｔコマンド処理モジュール１２ｄを実行中に「ｇｅｔ」コマンドで指定されたファイルがインデックスファイルであることを判断した場合に、インデックスファイル生成処理モジュール１２ｅの実行を開始する。そして、インデックスファイル記憶領域１３ｃに生成したインデックスファイルを記憶すると、このモジュールの実行を終了する。
【０１７１】
第３実施形態のインデックスファイル生成処理モジュール１２ｅにおいて、第１実施形態のインデックスファイル生成モジュール１２ｃと異なる点は、インデックスファイルを生成する時の日時分秒Ｙを計時回路１６から取得し、ＲＡＭ１３の日時分秒変数１３ｄに格納する。そして、所定のディレクトリと、所定のディレクトリにあるサブディレクトリとに存在するファイル及びサブディレクトリのうち、各ファイルのパスについて、各々のファイル名に日時分秒Ｙを含む文字列「＿ｔｅｍｐＹ」を挿入したものを新たなパスとする。また、各サブディレクトリのパスについて、それぞれ最後に「／＿ｉｎｄｅｘ＿ｔｅｍｐＹ．ｈｔｍｌ」を付加したものを新たなパスとする。これにより、サブディレクトリのパスは、日時分秒Ｙを含む文字列が挿入されたサブディレクトリのインデックスファイルのパスに変更される。そして、各ファイル及びサブディレクトリの名称に対し、各々の新たなパスによって示されるファイルへのリンクを設定したインデックスファイルを生成する。
【０１７２】
また、第３実施形態ではダミーファイルが不要である。従って、メモリカード１８にダミーファイルを保存する領域は不要である。
【０１７３】
次に、ＲＡＭ１３には日時分秒変数１３ｄが設けられている。日時分秒変数１３ｄは、ＣＰＵ１１がファイル生成処理モジュールを実行する際に使用されるもので、インデックスファイルを生成する毎に計時回路１６から取得された日時分秒Ｙを格納するためのメモリ領域である。そして、この日時分秒変数１３ｄに格納された日時分秒Ｙは、ファイル及びサブディレクトリのパスに日時分秒Ｙを含む文字列「＿ｔｅｍｐＹ」を付加する際に、使用される。この日時分秒変数１３ｄは、インデックスファイル生成処理モジュール１２ｅの実行が終了するとともに、解放される。
【０１７４】
一方、ＰＣ２０のＲＡＭ２３には日時分秒変数２３ａが設けられている。日時分秒変数２３ａは、ＣＰＵ２１が後述のメモリカードアクセス指示ファイル２４ｄを実行する際に使用されるもので、メモリカードアクセス指示ファイル２４ｄが実行される毎に計時回路２９から取得された日時分秒Ｘを格納するためのメモリ領域である。そして、この日時分秒変数２３ａに格納された日時分秒Ｘは、メモリカード１８のルートディレクトリのインデックスファイルのパスに対して、日時分秒Ｘを含む文字列「＿ｔｅｍｐＸ」を付加する際に、使用される。この日時分秒変数２３ａは、メモリカードアクセス指示ファイル２４ｄの実行が終了するとともに、解放される。
【０１７５】
また、ハードディスク２４には、第１実施形態のメモリカードアクセス指示ファイル２４ｃにかえて、メモリカードアクセス指示ファイル２４ｄが格納されている。このメモリカードアクセス指示ファイル２４ｄは、ＣＰＵ２１によって実行されるファイルで、ＷＷＷブラウザ２４ａを起動して、ＦＴＰに従い、メモリカード１８のルートディレクトリのインデックスファイルにアクセスするよう指示する指示情報が記載されたファイルである。
【０１７６】
このメモリカードアクセス指示ファイル２４ｄは、ＯＳのデスクトップ環境上に表示され、キーボード２６又はマウス２７によってユーザから選択することが可能となっている。このメモリカードアクセス指示ファイル２４ｄが選択されると、ＣＰＵ２１はその時点における日時分秒Ｘを計時回路２９から取得し、メモリカード１８のルートディレクトリのインデックスファイルのパス名に、日時分秒を含む文字列「＿ｔｅｍｐＸ」を付加する。そして、その文字列が付加されたパスで示されるファイルを指定ファイルとしてＦＴＰによる転送命令（「ｇｅｔ」コマンド）を送信するために、ＷＷＷブラウザ２４ａを起動する。
【０１７７】
次に、図１１（ａ）を参照して、ＰＣ２０のＣＰＵ２１で実行される第３実施形態のメモリカードアクセス指示ファイル２４ｄの処理フローについて説明する。図１１（ａ）は、このメモリカードアクセス指示ファイル２４ｄのフローチャートである。このメモリカードアクセス指示ファイル２４ｄは、ユーザからキーボード２６又はマウス２７によって選択されると、ＣＰＵ２１により実行が開始される。
【０１７８】
図１１（ａ）に示すように、この処理では、まず、現在の日時分秒Ｘを計時回路２９０から取得し、日時分秒変数２３ａに格納する（Ｓ１１０１）。そして、ＵＲＬ（Ｕｎｉｆｏｒｍ  Ｒｅｓｏｕｒｃｅ  Ｌｏｃａｔｏｒ）として、「ｆｔｐ：／／ａａａ／＿ｉｎｄｅｘ＿ｔｅｍｐＸ．ｈｔｍｌ」を指定してＷＷＷブラウザを起動する（Ｓ１１０２）。すわなち、メモリカード１８のルートディレクトリのインデックスファイルのパス名「／／ａａａ／＿ｉｎｄｅｘ．ｈｔｍｌ」に、日時分秒変数２３ａに格納された日時分秒Ｘを含む文字列「＿ｔｅｍｐＸ」を付加し、その文字列が付加されたパス「／／ａａａ／＿ｉｎｄｅｘ＿ｔｅｍｐＸ．ｈｔｍｌ」で示されるファイルを指定ファイルとしてＦＴＰによる転送命令（「ｇｅｔ」コマンド）を送信するように、ＷＷＷブラウザ２４ａに対し指示する。
【０１７９】
これにより、ＷＷＷブラウザ２４ａは、ＦＴＰに従って、メモリカード１８のルートディレクトリのインデックスファイル「／／ａａａ／＿ｉｎｄｅｘ＿ｔｅｍｐＸ．ｈｔｍｌ」の転送命令をカードリーダ１０に対して送信する。ここで、日時分秒Ｘは、メモリカードアクセス指示ファイル２４ｄが実行される毎に、計時回路２９から取得されるので、毎回異なる値となる。よって、ＷＷＷブラウザ２４ａは、毎回異なるファイルの転送命令をカードリーダ１０に対して行っていると認識する。従って、ＷＷＷブラウザ２４ａが、ルートディレクトリのインデックスファイルに対して繰り返しアクセスする場合でも、キャッシュ２４ｂのデータを参照させないようにすることができる。
【０１８０】
次に、図１１（ｂ）を参照して、カードリーダ１０のＣＰＵ１１で実行される、第３実施形態のｇｅｔコマンド処理モジュール１２ｄの処理フローについて説明する。なお、上述した第１実施形態のｇｅｔコマンド処理モジュール１２ｂと同一の部分には同一の符号を付して、その説明を省略する。
【０１８１】
この処理において、まず、「ｇｅｔ」コマンドで指定されたファイルの末尾が「＿ｉｎｄｅｘ＿ｔｅｍｐＮ．ｈｔｍｌ」（Ｎは任意の値）と一致するかを確認し（Ｓ１１1０）、一致する場合は（Ｓ１１１０：Ｙｅｓ）、指定ファイルがインデックスファイルと判断して、後述のインデックスファイル生成処理モジュール１２ｅを実行する（Ｓ１１１３）。これにより、インデックスファイルのパス名に、日時分秒を含む文字列「＿ｔｅｍｐＮ」が付加されていた場合であっても、それをインデックスファイルとして認識して、インデックスファイルを生成することができる。そして、Ｓ１１１３の処理の後、Ｓ４１４の処理へ移行する。なお、Ｓ４１３〜Ｓ４１６の処理は、上述した第１実施形態のｇｅｔコマンド処理モジュール１２ｂ（図４（ｂ）参照）と同様の処理を行う。
【０１８２】
一方、Ｓ１１１０の処理で、一致しないと確認した場合（Ｓ１１１０：Ｎｏ）は、指定ファイルがメモリカード１８に格納されたファイルであると判断してＳ１１１１の処理へ移行する。
【０１８３】
Ｓ１１１１では、指定ファイルのパスに日時分秒Ｎを含む文字列「＿ｔｅｍｐＮ」（Ｎは任意の数）が含まれているかを確認する。そして、含まれている場合（Ｓ１１１１：Ｙｅｓ）、指定ファイルのパスからその日時分秒Ｎを含む文字列「＿ｔｅｍｐＮ」を削除したパスを、正しい指定ファイルのパスとして認識し（Ｓ１１１２）、Ｓ４１３の処理へ移行する。これにより、指定ファイルのパスに日時分秒Ｎを含む文字列「＿ｔｅｍｐＮ」が付加されている場合でも、正しい指定ファイルのパスを取得することができる。
【０１８４】
また、Ｓ１１１１の処理で確認した結果、指定ファイルのパスに日時分秒Ｎを含む文字列「＿ｔｅｍｐＮ」が含まれていない場合（Ｓ１１１１：Ｎｏ）、Ｓ４１３の処理へ移行する。これにより、「ｇｅｔ」コマンドで指定されたファイルを、メモリカード１８から取得することが可能である。
【０１８５】
次に、図１２を参照して、カードリーダ１０のＣＰＵ１１で実行される、第３実施形態のインデックスファイル生成処理モジュール１２ｅの処理フローについて説明する。なお、上述した第１実施形態のｇｅｔコマンド処理モジュール１２ｃと同一の部分には同一の符号を付して、その説明を省略する。
【０１８６】
Ｓ５００〜Ｓ５０５、Ｓ５０７、Ｓ５０９、及びＳ５１０の処理は、上述した第１実施形態のｇｅｔコマンド処理モジュール１２ｃ（図５参照）と同様の処理を行う。Ｓ５０５の処理の後、この処理では、計時回路１６から、現在の日時分秒Ｙを取得し、日時分秒変数１３ｄに記憶する（Ｓ１２０１）。そして、指定ディレクトリにある各ファイルのパスにおいて、各々のファイル名に日時分秒Ｙを含む文字列「＿ｔｅｍｐＹ」を挿入したものを新たなパスとする（Ｓ１２０２）。続いて、指定ディレクトリにある各サブディレクトリのパスにおいて、それぞれ最後に「／＿ｉｎｄｅｘ＿ｔｅｍｐＹ．ｈｔｍｌ」を付加し、それを新たなパスとする（Ｓ１２０３）。これにより、サブディレクトリのパスは、日時分秒Ｙを含む文字列「＿ｔｅｍｐＹ」が挿入されたサブディレクトリのインデックスファイルのパスに変更される。
【０１８７】
Ｓ１２０３の処理の後、Ｓ５０７へ移行する。そして、Ｓ５０７の処理の後、指定ディレクトリにあるファイル及びサブディレクトリの各々の名称に対し、各々のファイル及びサブディレクトリの新たなパスと、サムネイルを生成したものについてはサムネイルのパスとをそれぞれ対応付けて、ファイル・ディレクトリ記憶領域１３ａに記憶し（Ｓ１２０４）、Ｓ５０９の処理へ移行する。
【０１８８】
そして、Ｓ５０９の処理で確認した結果、親ディレクトリに存在する全てのサブディレクトリについて、ファイル及びサブディレクトリの存在の有無を調べたと判断した場合（Ｓ５０９：Ｙｅｓ）、ファイル・ディレクトリ記憶領域１３ａに記憶された情報を基に、インデックスファイルを生成する（Ｓ１２０５）。すなわち、Ｓ１２０５では、ファイル・ディレクトリ記憶領域１３ａに記憶されたファイル及びサブディレクトリの各々の名称に、各々の新たなパスで示されるファイルへのリンクを設定し、また、サムネイルを生成したファイルに対し、各々のファイルの名称に対応付けてそれぞれのサムネイルを貼付した、インデックスファイルを生成する。そして、生成されたインデックスファイルをインデックスファイル記憶領域１３ｃに記憶した後、このインデックスファイル生成処理モジュール１２ｃを終了する。
【０１８９】
このように、日時分秒Ｙは、指定ディレクトリに対して、インデックスファイルの生成に必要なデータの準備を行う毎に計時回路１６から取得されるので、毎回異なる値となる。よって、インデックスファイルが生成される毎に、各ファイル及びサブディレクトリに設定されたリンク先のパスは異なるものになる。よって、異なるタイミングで生成されたインデックスファイルにより、同一のファイルやサブディレクトリがＷＷＷブラウザ２４ａから選択されても、リンク先のパスが異なるので、そのファイルやサブディレクトリについて保存されたキャッシュのデータを参照させないようにすることができる。
【０１９０】
次に、図１３を参照して、第３実施形態のファイル転送システム１の動作について説明する。図１３は、第３実施形態におけるファイル転送システム１の動作の順序を示すシーケンスチャートである。なお、上述した第１実施形態と同一の部分には同一の符号を付して、その説明を省略する。
【０１９１】
図１３に示すように、第３実施形態のファイル転送システム１では、まず、ＰＣ２０のユーザ７０が、デスクトップ環境の表示画面から、メモリカードアクセス指示ファイル２４ｃを選択すると、ＣＰＵ２１は、計時回路２９から、現在の日時分秒「Ａ」を取得するとともに、ＷＷＷブラウザ２４ａを起動し、メモリカード１８のルートディレクトリのインデックスファイル「＿ｉｎｄｅｘ＿ｔｅｍｐＡ．ｈｔｍｌ」の転送命令（「ｇｅｔ」コマンド）をＦＴＰによって送信するよう、ＷＷＷブラウザ２４ａに通知する（Ｓ１３０１）。
【０１９２】
これを受けて、ＷＷＷブラウザ２４ａは、キャッシュ２４ｂに対しインデックスファイル「＿ｉｎｄｅｘ＿ｔｅｍｐＡ．ｈｔｍｌ」の転送命令を送信する（Ｓ１３０２）。しかし、このインデックスファイルのパスには、日時秒数Ａを含んでおり、同じパスのファイルはキャッシュ２４ａに存在しないので、キャッシュ２４ｂからＷＷＷブラウザ２４ａに対して「＿ｉｎｄｅｘ＿ｔｅｍｐＡ．ｈｔｍｌ」の転送不可通知が送信される（Ｓ１３０３）。これにより、ＷＷＷブラウザ２４ａは、「＿ｉｎｄｅｘ＿ｔｅｍｐＡ．ｈｔｍｌ」の転送命令（「ｇｅｔ」コマンド）をカードリーダ１０に対して送信する（Ｓ１３０４）。従って、過去に、ルートディレクトリのインデックスファイルがキャッシュ２４ｂに記憶された場合でも、カードリーダ１０に対して、最新のインデックスファイルを生成させることができる。
【０１９３】
続いて、カードリーダ１０では、インデックスファイル生成処理モジュール１２ｅによって、ルートディレクトリに存在するファイル及びサブディレクトリを検出して、「＿ｉｎｄｅｘ＿ｔｅｍｐＡ．ｈｔｍｌ」を生成し（Ｓ１３０５）、これをＷＷＷブラウザ２４ａに返信する（Ｓ１３０６）。そして、第１実施形態と同様に、ＷＷＷブラウザ２４ａは、受信したルートディレクトリのインデックスファイルをユーザ７０に対し表示する（Ｓ６０８）。また、ＷＷＷブラウザ２４ａに表示された「＿ｉｎｄｅｘ＿ｔｅｍｐＡ．ｈｔｍｌ」は、キャッシュ２４ｂに書き込まれる（Ｓ１３０７）。しかし、上述の通り、ルートディレクトリのインデックスファイルのパスは、日時分秒によってメモリカードアクセス指示ファイルが選択される度に変化するので、以後、キャッシュ２４ｂに書き込まれた「＿ｉｎｄｅｘ＿ｔｅｍｐＡ．ｈｔｍｌ」は読み出されない。
【０１９４】
続いて、ユーザ７０が、ＷＷＷブラウザ２４ａに表示されたインデックスファイルからファイルの名称「ｔｅｍｐ．ｔｘｔ」を選択すると（Ｓ６１０）、ＷＷＷブラウザ２４ａは、ファイルの名称「ｔｅｍｐ．ｔｘｔ」に対して設定されたリンク「ｔｅｍｐ＿ｔｅｍｐＢ．ｔｘｔ」を基に、ファイル「ｔｅｍｐ＿ｔｅｍｐＢ．ｔｘｔ」の転送命令を、キャッシュ２４ｂに対して送信する（Ｓ１３０８）。ここで、「ｔｅｍｐＢ」は、Ｓ１３０５の処理でカードリーダ１０がインデックスファイルを生成するときに、計時回路１６から取得した日時分秒「Ｂ」を含む文字列であり、インデックスファイルを生成する度に変化する。よって、キャッシュ２４ｂには「ｔｅｍｐ＿ｔｅｍｐＢ．ｔｘｔ」が存在しないため、キャッシュ２４ｂからＷＷＷブラウザ２４ａに対して「ｔｅｍｐ＿ｔｅｍｐＢ．ｔｘｔ」の転送不可通知が送信される（Ｓ１３０９）。これにより、ＷＷＷブラウザ２４ａは、カードリーダ１０に対し、「ｔｅｍｐ＿ｔｅｍｐＢ．ｔｘｔ」の転送命令（「ｇｅｔ」コマンド）を送信する（Ｓ１３１０）。
【０１９５】
続いて、カードリーダ１０は、ｇｅｔコマンド処理モジュール１２ｄによって、メモリカード１８に記憶された「ｔｅｍｐ．ｔｘｔ」を取得し、これを「ｔｅｍｐ＿ｔｅｍｐＢ．ｔｘｔ」として、ＷＷＷブラウザ２４ａに転送する（Ｓ１３１１）。そして、ＷＷＷブラウザ２４ａは、第１実施形態と同様、「ｔｅｍｐ．ｔｘｔ」をユーザ７０に対して表示する（Ｓ６１９）。これにより、カードリーダ１０から、最新の「ｔｅｍｐ．ｔｘｔ」を読み出しが完了する。また、ＷＷＷブラウザ２４ａは、受信した「ｔｅｍｐ．ｔｘｔ」を「ｔｅｍｐ＿ｔｅｍｐＢ．ｔｘｔ」としてキャッシュ２４ｂに書き込む（Ｓ６１９）。
【０１９６】
しかし、上述の通り、「ｔｅｍｐ＿ｔｅｍｐＢ．ｔｘｔ」の中の文字列「ｔｅｍｐＢ」は、インデックスファイルが生成される度に変化するので、新たにインデックスファイルを生成したのちは、キャッシュ２４ｂに書き込まれた「ｔｅｍｐ＿ｔｅｍｐＢ．ｈｔｍｌ」は読み出されない。
【０１９７】
なお、ユーザ７０が、ＷＷＷブラウザ２４ａに表示されたインデックスファイルからサブディレクトリの名称「Ｐｈｏｔｏ」を選択した場合の動作は、サブディレクトリの名称「Ｐｈｏｔｏ」に対して設定されたリンクがインデックスファイル「Ｐｈｏｔｏ／＿ｉｎｄｅｘ＿ｔｅｍｐＢ．ｈｔｍｌ」（Ｂは日時分秒）であるほかは、ファイルの名称「ｔｅｍｐ．ｔｘｔ」を選択した場合の動作（Ｓ６１０、Ｓ１３０８〜Ｓ１３１１、Ｓ６１９、及びＳ１３１２）と同様であるので、その図示と説明を省略する。
【０１９８】
以上説明したように、第３実施形態のファイル転送システム１では、カードリーダ１０が、インデックスファイルを生成する時の日時分秒Ｙを計時回路１６から取得し、ファイル及びサブディレクトリにあるインデックスファイルの各々のパスに日時分秒を含む文字列「＿ｔｅｍｐＹ」（Ｙは日時分秒）を付加したものを、各々の新しいパスとする。そして、各ファイル及びサブディレクトリの名称に、その新しいパスで示されたファイル若しくはサブディレクトリのインデックスファイルへのリンクを各々設定したインデックスファイルを生成する。
【０１９９】
これにより、所定のディレクトリのインデックスファイルが繰り返し生成された場合、インデックスファイルを生成する度に取得される日時分秒Ｙによって、それぞれのインデックスファイルにおいて同じファイルやサブディレクトリに対し異なるパスが関連付けられる。よって、ＷＷＷブラウザ２４ａには異なるファイル若しくはサブディレクトリとして認識させることができる。従って、異なるタイミングで生成されたインデックスファイルにより、同一のファイルやサブディレクトリがブラウザから選択されても、そのファイルやサブディレクトリについて保存されたキャッシュのデータを参照させないようにすることができる。
【０２００】
一方、ＷＷＷブラウザ２４ａからの転送命令で指定されたファイルのパスに日時分秒を含む文字列「＿ｔｅｍｐＮ」（Ｎは任意の数）が付加されている場合、カードリーダ１０は、そのパスから文字列「＿ｔｅｍｐＮ」を削除し、その削除したパスを正しいパスとして認識する。これにより、正しいパスによって指定されたファイルがカードリーダ１０からＰＣ２０に送信されるので、ユーザの所望のファイルを正しくＰＣ２０に送信することができる。よって、ＰＣ２０から最新のファイルへ確実にアクセスさせることができる。
【０２０１】
以上、実施形態に基づき本発明を説明したが、本発明は上述した実施形態に何ら限定されるものではなく、本発明の趣旨を逸脱しない範囲内で種々の改良変更が可能であることは容易に推察できるものである。
【０２０２】
例えば、上記実施形態では、各サブディレクトリの名称に対して直接または間接的に設定したリンク先を、サブディレクトリに存在する（実際には存在するものとして取り扱った）インデックスファイルとしたが、サブディレクトリに存在する任意のファイルをリンク先としてもよい。また、サブディレクトリそのものをリンク先としてもよい。この場合、カードリーダ１０でサブディレクトリを指定した転送命令（「ｇｅｔ」コマンド）を受信したときに、カードリーダ１０はサブディレクトリのインデックスファイルを生成して転送してもよいし、サブディレクトリに存在する任意のファイルを転送してもよい。
【０２０３】
また、上記実施形態では、カードリーダ１０は所定のディレクトリのインデックスファイルの転送命令を受信した場合に、その所定のディレクトリについてインデックスファイルを生成するようにしたが、メモリカード１８において、所定のディレクトリに新規ファイル若しくはサブディレクトリが新規作成された場合、又は、その所定のディレクトリからファイル若しくはサブディレクトリが削除された場合に、その所定のディレクトリについてインデックスファイルを生成し、所定の位置に格納してもよい。これにより、インデックスファイルの転送命令を受信したときに、所定のディレクトリに存在するファイル及びサブディレクトリがインデックスファイルに反映されているので、カードリーダ１０は、ＰＣ２０のＷＷＷブラウザ２４ａに対し、メモリカード１８に格納されているファイル及びサブディレクトリの最新の情報を表示させることができる。
【０２０４】
また、上記実施形態において、所定のディレクトリに存在する各々のサブディレクトリについて、各々のサブディレクトリのサイズ若しくはそのサブディレクトリに含まれるファイル及びサブディレクトリの数を取得するサブディレクトリ情報取得手段を設け、サブディレクトリ情報取得手段で取得した各々のサブディレクトリのサイズ若しくはそのサブディレクトリに含まれるファイル及びサブディレクトリの数を、各々のサブディレクトリの名称に対応付けられた設けられたサブディレクトリ情報領域に表示されるようにインデックスファイルを生成するようにしてもよい。これにより、ＷＷＷブラウザ２４ａに表示されたインデックスファイルから、各々のサブディレクトリ情報領域に表示されたサブディレクトリのサイズ若しくはそのサブディレクトリに含まれるファイル及びサブディレクトリの数によって、各サブディレクトリに含まれるファイルの内容を推測させることができる。よって、ユーザに対し、サブディレクトリに所望のファイルが存在するか否かの判断を容易に行わせることができる。
【０２０５】
また、上記実施形態において、サムネイルを生成したファイルについては、ファイルの名称とサムネイルとを表示するようにインデックスファイルを生成したが、サムネイルだけを表示するようにインデックスファイルを生成してもよい。また、サムネイルを表示せずにファイルの名称のみ表示するようにしてもよい。
【０２０６】
また、上記実施形態において生成したインデックスファイルは、所定のディレクトリと、その所定のディレクトリにあるサブディレクトリとに存在するファイル及びサブディレクトリの一覧を表示するものであったが、所定のディレクトリに含まれる全てのサブディレクトリに存在するファイル及びサブディレクトリの一覧を表示するものであってもよい。これにより、１つのインデックスファイルで所定のディレクトリに含まれる全てのファイル及びサブディレクトリを確認することができる。また、所定のディレクトリと所定のディレクトリに含まれる所定階層までのサブディレクトリに存在するファイル及びサブディレクトリの一覧を表示するものであってもよい。この場合、インデックスファイルが所定のディレクトリに含まれる全てのサブディレクトリに存在するファイル及びサブディレクトリの一覧を表示するものである場合と比較して、インデックスファイルの生成にかかる時間を短くすることができる。
【０２０７】
また、上記第１実施形態では、ダミーファイルをメモリカード１８に格納するようにしたが、これをＲＡＭ１３や別のメモリ装置に格納するようにしてもよい。
【０２０８】
また、上記第３実施形態では、ファイル及びサブディレクトリのインデックスファイルのパスに、インデックスファイルを生成する度に計時回路１６から取得した日時分秒を含む文字列を付加したが、これに限らずインデックスファイルを生成する度に変化する情報を付加するようにしてよい。例えば、インデックスファイルを生成する度にカウントアップするカウンタを設け、このカウンタの数含んだ文字列をファイル及びサブディレクトリのインデックスファイルのパスに付加してもよい。
【０２０９】
また、上記実施形態１及び３では、カードリーダ１０とＰＣ２０との間のデータ転送をＦＴＰに従って行う例を示したが、これをＨＴＴＰに従って行ってもよい。この場合、ＦＴＰサーバプログラム１２ａはＨＴＴＰサーバプログラムに置き換えられる。なお、ＨＴＴＰサーバプログラムの処理フローは、図４（ａ）に示したＦＴＰサーバプログラム１２ａの処理フローと同一のものを用いることができる。
【０２１０】
また、上記実施形態では、ＬＡＮを介してカードリーダ１０とＰＣ２０とを接続したが、インターネットを介して接続してもよい。
【０２１１】
また、上記実施形態では、ファイル格納手段としてメモリカード１８を例に説明したが、これに限らず、ハードディスクやＣＤ（Ｃｏｎｐａｃｔ  Ｄｉｓｃ）、ＤＶＤ（Ｄｉｇｉｔａｌ  Ｖｅｒｓａｔａｉｌ  Ｄｉｓｃ）など、ファイルを格納できる手段であればよい。また、サーバ装置はカードリーダ１０に限らず、ファイル格納手段を有したものであればよい。
【図面の簡単な説明】
【０２１２】
【図１】本発明の第１実施形態におけるファイル転送システムの電気的構成を示すブロック図である。
【図２】（ａ）はＷＷＷブラウザによってＬＣＤに表示されたインデックスファイルの表示画面図である、（ｂ）はサブディレクトリ「Ｐｈｏｔｏ」に対して生成されたダミーファイル「Ｐｈｏｔｏ＿ｄｕｍｍｙ．ｈｔｍｌ」の内容を示す図であり、（ｃ）ファイル「ｔｅｍｐ．ｔｘｔ」に対して生成されたダミーファイル「ｔｅｍｐ＿ｔｘｔ＿ｄｕｍｍｙ．ｈｔｍｌ」の内容を示す図である。
【図３】（ａ）はＰＣのＯＳによりＬＣＤに表示されるデスクトップ環境の表示画面図であり、（ｂ）はメモリカードアクセス指示ファイル２４ｃ「ｄｕｍｍｙ．ｈｔｍｌ」の内容を示す図である。
【図４】第１実施形態のカードリーダで実行されるｇｅｔコマンド処理モジュールのフローチャートである。
【図５】第１実施形態のカードリーダで実行されるインデックスファイル生成処理モジュールのフローチャートである。
【図６】第１実施形態のファイル転送システムの動作の順序を示すシーケンスチャートである。
【図７】（ａ）は第２実施形態におけるファイル転送システムにおいて、カードリーダからＰＣにデータ転送される際のＨＴＴＰヘッダの内容を示す図であり、（ｂ）は第２実施形態のカードリーダで実行されるｇｅｔコマンド処理モジュールのフローチャートである。
【図８】第２実施形態のカードリーダで実行されるインデックスファイル生成処理モジュールのフローチャートである。
【図９】第２実施形態のファイル転送システムの動作の順序を示すシーケンスチャートである。
【図１０】本発明の第３実施形態におけるファイル転送システムの電気的構成を示すブロック図である。
【図１１】（ａ）はＰＣで実行されるメモリカードアクセス指示処理ファイルのフローチャートであり、（ｂ）は第３実施形態のカードリーダで実行されるｇｅｔコマンド処理モジュールのフローチャートである。
【図１２】第３実施形態のカードリーダで実行されるインデックスファイル生成処理モジュールのフローチャートである。
【図１３】第３実施形態のファイル転送システムの動作の順序を示すシーケンスチャートである。
【符号の説明】
【０２１３】
１                              ファイル転送システム
１０                            カードリーダ（サーバ装置）
１８                            メモリカード（ファイル格納手段）
１８ａ                          ダミーファイル（ダミーファイル格納手段）
２０                            ＰＣ（クライアント装置）
２４ａ                          ＷＷＷブラウザ
４０                            ＬＡＮ（ネットワーク）
Ｓ４０３                        受信手段
Ｓ４１２、Ｓ７１１、Ｓ１１１３  インデックスファイル生成手段
Ｓ４１４                        ファイル取得手段
Ｓ４１５、Ｓ７１２              送信手段
Ｓ５０６                        ダミーファイル生成手段
Ｓ１２０１                      付帯情報生成手段
Ｓ１２０２、Ｓ１２０３          付加手段
Ｓ５０７                        サムネイル生成手段