0

Java を使用して RHEL 5 でシンボリック リンクを作成したいと考えています。java6 では、 createSymbolicLinkには 2 つのパラメータしかありません。ただし、Java7 の場合、FileAttribute はパラメータとともに含まれています。つまり、合計 3 つのパラメータです。

public static Path createSymbolicLink(パスリンク、
                      パス ターゲット、
                      FileAttribute... 属性)
                               IOException をスローします
ターゲットへのシンボリック リンクを作成します (オプションの操作)。
target パラメータは、リンクのターゲットです。絶対パスまたは相対パスの可能性があり、存在しない可能性があります。ターゲットが相対パスの場合、結果のリンクに対するファイル システム操作は、リンクのパスに対して相対的になります。

attrs パラメータは、リンクの作成時にアトミックに設定するオプションの属性です。各属性は、その名前で識別されます。同じ名前の複数の属性が配列に含まれている場合、最後に出現した属性以外はすべて無視されます。

シンボリック リンクがサポートされているが、基になる FileStore がシンボリック リンクをサポートしていない場合、これは IOException で失敗する可能性があります。さらに、一部のオペレーティング システムでは、シンボリック リンクを作成するために実装固有の権限で Java 仮想マシンを起動する必要がある場合があります。この場合、このメソッドは IOException をスローする可能性があります。

パラメーター:
link - 作成するシンボリック リンクのパス
target - シンボリック リンクのターゲット
attrs - シンボリック リンクの作成時にアトミックに設定する属性の配列

3番目のパラメーターとして何を指定すればよいかわかりませんでした。シンボリックリンクを作成するだけです。

問題は、3 番目のパラメーターに何を指定すればよいかわからないことと、FileAttributeインターフェイスについてあまり考えていないことです。助けてください。

反対票を投じる方は、反対票を投じる理由をコメントしてください。

4

1 に答える 1

1

ソースとターゲットはファイル名ではなくパスです。コードを次のように変更します。

Files.createSymbolicLink(Paths.get(sourceFileName), Paths.get(targetFileName));
于 2013-10-23T14:02:38.783 に答える