ros c++のプログラム内でファイルを読み込む方法を調べました.
以下サイトのプログラムでできました.
c++
file_read.cpp
# include <fstream>
# include <iostream>
# include <string>
int main()
{
std::ifstream ifs("./test.txt");
int buf_size = 81;
char str[buf_size];
if (ifs.fail()) {
std::cerr << "Failed to open file." << std::endl;
return -1;
}
while (ifs.getline(str, buf_size)) {
std::cout << str << std::endl;
}
return 0;
}
CMakeLists.txt
cmake_minimum_required(VERSION 3.0.2)
project(linux_mac)
find_package(catkin REQUIRED)
catkin_package(
)
include_directories(
)
add_executable(file_read src/file_read.cpp)
target_link_libraries(
file_read
)
python2/3
fread.py
import sys
f = open('test.txt', 'r')
data = f.read()
if sys.version_info.major != 2:
data = data.decode('utf-8')
print(data)
f.close()
実行ディレクトリ内にtest.txt
を作成し実行するとファイル内の文字が出力されます.