2011-12-16 12 views
3

私はDrRacketプログラムを作成して、指定されたディレクトリからすべてのファイルをコピーすることができます(USBカメラから取り外して(大容量記憶装置と見なされている場合))、コンピュータのハードドライブ上のフォルダにコピーします。どんな理由であれ、私はDrRacketのコンピュータ上のパスの実装を理解することができません(つまり、Windowsマシン上のデスクトップの場合は:C:\Users\Mike\Desktop)私はヘルプデスクを読んでもこれを理解できません。私の混乱をはっきりさせるためにどこを見なければならないかについての示唆はありますか?私はこのアイデアを実装する必要があります関数呼び出しがあると思う:ラケットを使用したファイルへのアクセス

(copy-directory/files src dst) 

私はそれを把握した後、私はそれがボタンをクリックするだけで動作して、それのためのGUIで作業するつもりです。

答えて

5

pathsのコンテンツを探している可能性があります。 build-pathを使用してパスを作成できます。ただし、多くのパス操作関数では文字列も使用できます。適切に置き換え...

#lang racket 
(copy-directory/files "C:\\Users\\Mike\\Desktop\\..." ...) 

:だからあなたのような何かを言うことができるはずです。

+1

このように複雑になっているのがなぜRacketになっているのか疑問がある場合、答えはクロスプラットフォームの利点を提供することです。たとえば、ハードコーディングなしでパスマンを特定する方法や、/などです。しかし、あなたがその利益を望んでおらず、1つのプラットフォームにハードコーディングを気にしないなら、文字列を使うことができます。 \は文字列リテラルのエスケープ文字であることを覚えておいてください(C/C++と同じように)ので、dyooが示すように¥¥を使う必要があります。 –

関連する問題