各種開発言語で「ファイル存在チェック」まとめ
さて、今回は各種開発言語におけるファイルの存在チェック方法についてまとめました。
今回も基本的にLinuxでのターミナル上での実行手順の一例となります。
存在チェック後にファイルを読み込むプログラム制御を含めています。
perl
#!/usr/bin/perl
use strict;
use warnings;
my $file = 'Hello.txt';
if (-e $file) {
print "$fileが存在します。\n";
open(IN,$file);
while(<IN>){
print $_;
}
} else {
print "$fileが存在しません。\n";
}
※-eの場合、対象がディレクトリでも存在確認が可能。ディレクトリと区別したい場合には-fを使う。
#!/usr/bin/perl
use strict;
use warnings;
my $file = 'Hello.txt';
if (-f $file) {
print "$fileが存在します。\n";
open(IN,$file);
while(<IN>){
print $_;
}
} else {
print "$fileが存在しません。\n";
}
python
#!/usr/bin/python3
#
import os
#
filename='Hello.txt'
if(os.path.exists(filename)):
fileobj = open(filename)
data = fileobj.read()
fileobj.close()
print(data)
else:
print filename + " is not found\n"
ruby
#!/usr/bin/ruby
filename="Hello.txt"
if File.exist?(filename)
fileobj=open(filename)
print fileobj.read
fileobj.close
else
print filename + " is file Not Found\n"
end
java
import java.io.File;
import java.io.FileReader;
import java.io.BufferedReader;
import java.io.FileNotFoundException;
import java.io.IOException;
public class Hello {
public static void main(String args[]) {
// 確認するフォルダとファイルのパスを指定する
File file = new File("Hello.txt");
// ファイルの存在を確認する
if (file.exists()) {
System.out.println("ファイルが存在します");
try{
BufferedReader br = new BufferedReader(new FileReader(file));
String str = br.readLine();
System.out.println(str);
br.close();
}catch(FileNotFoundException e){
System.out.println(e);
}catch(IOException e){
System.out.println(e);
}
} else {
System.out.println("ファイルが存在しません");
}
}
}
go
package main
import (
"fmt"
"io/ioutil"
)
func main() {
file:="Hello.txt"
text,err := ioutil.ReadFile(file)
if err != nil {
}
fmt.Print(string(text))
}
c
#include<stdio.h>
int existFile(const char* path){
FILE* fp=fopen(path,"r");
if(fp==NULL){
printf("NULL\n");
return 0;
}
fclose(fp);
return 1;
}
int main(){
FILE *fp;
char text[20],*pa;
char filename[]={"Hello.txt"};
fp=fopen(filename,"r");
if (existFile(filename)){
puts("存在します。");
pa=fgets(text,20,fp);
printf("%s\n",text);
fclose(fp);
}
else{
puts("存在しません。");
}
return 0;
}