1

によって与えられた入力データのベクトルがA <-- Files.Dir '...directory'あり、これはそのディレクトリ内のすべてのファイルのベクトルを返します。

ただし、パスにはファイル名のみが含まれ、絶対パスは含まれません。私がやりたいのは、に格納されているパスBをの各要素に追加することAです。

一体どうやってこれをするの?

4

1 に答える 1

5

各プリミティブ演算子 (dyadic ¨) と共にカテネート プリミティブ関数 (dyadic ,) を使用できます。例は次のようになります。

      a
 file00  file01  file02  file03
      b
C:\Path\To\Files
        (⊂b,'\'),¨a
 C:\Path\To\Files\file00  C:\Path\To\Files\file01  C:\Path\To\Files\file02  C:\Path\To\Files\file03

Windowsファイルシステムを想定しています。

catenate では、両方の引数が同じ形状であるか、スカラーである必要があることに注意してください。そのため、文字ベクトル b を囲んで (⊂)、文字ベクトルを含むスカラーにする必要がありました。

また、完全を期すために、カテネートを使用して末尾のバックスラッシュを追加したことにも注意してください

⊂b,'\'

かっこは、APL がかっこを除いて常に右から左に評価するため、これが最初に実行されるようにするためだけに存在していました。

于 2012-10-04T12:22:48.327 に答える