R(ファイルの入出力)

2023年4月 4日 (火)

[R]ファイルのハッシュ値を得る

opensslパッケージを使う。以下はPHPの圧縮ファイルのハッシュ値(SHA256)を得た例。sha256関数の戻り値はロウ型のため、as.character関数で文字列に変換して表示している。

R_file_hash

> library(openssl)
> sha256(file("php-8.2.4-Win32-vs16-x64.zip"))
sha256 a3:60:1f:e2:3a:df:b4:98:5b:e5:2e:b3:a7:36:57:16:35:0e:4b:85:7c:47:58:36:73:a9:aa:53:16:28:85:a3
> as.character(sha256(file("php-8.2.4-Win32-vs16-x64.zip")))
[1] "a3601fe23adfb4985be52eb3a7365716350e4b857c47583673a9aa53162885a3"

2021年9月12日 (日)

[R]一時ファイル(テンポラリファイル)を利用する

一時的に利用するファイル(テンポラリファイル)を利用するにはtempfile関数を使う。tempfile関数はテンポラリファイルを作成するのではなく、テンポラリファイルとして使用できるファイル名を返すことに注意。以下、実行例。

> filename <- tempfile()
> filename
[1] "C:\\Users\\○○\\AppData\\Local\\Temp\\××\\□□"
> write(1:3, file = filename)
> dtf <- read.table(file = filename)
> dtf
V1 V2 V3
1 1 2 3

上記はWindows 10 で実行した例。○○はアカウント名、××と□□は任意の文字列。××は現在起動中のR本体用のテンポラリディレクトリであり、そのRを終了するとこのディレクトリは自動で削除される。□□はテンポラリファイルのファイル名で、このファイルも自動で削除される。

この自動で削除されるテンポラリディレクトリ名を得るにはtempdir関数を使う。

> tempdir()
[1] "C:\\Users\\○○\\AppData\\Local\\Temp\\××"
無料ブログはココログ

■■

■■■