当前位置: 首页>>代码示例>>C++>>正文


C++ FileUtils::close方法代码示例

本文整理汇总了C++中FileUtils::close方法的典型用法代码示例。如果您正苦于以下问题:C++ FileUtils::close方法的具体用法?C++ FileUtils::close怎么用?C++ FileUtils::close使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在FileUtils的用法示例。


在下文中一共展示了FileUtils::close方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。

示例1: touch_file

void touch_file(bool single)
{
  FileUtils file;
  int ret = file.open("test1.txt", O_WRONLY | O_TRUNC | O_CREAT, 0644);
  ASSERT_NE(ret, 0);
  
  vector<string> v;
  gen_file(v, single);

  for (size_t i = 0;i < v.size();i++) {
    file.write(v[i].c_str(), v[i].size());
  }
  file.close();
}
开发者ID:Abioy,项目名称:oceanbase,代码行数:14,代码来源:test_file_reader.cpp

示例2: memcmp

      //test compatible between version2 && version2 compiled without -DCOMPATIBLE
      TEST_F(TestObSSTableTrailer, Compatible)
      {
        ObTrailerOffset trailer_offset;
        ObSSTableTrailer trailer;
        EXPECT_TRUE(default_range == trailer.get_range());
        FileUtils filesys;
        const char *compressor_name = "lzo1x_1_11_compress";
        int64_t file_len = FileDirectoryUtils::get_size(trailer_file_name);
        char *file_buf = reinterpret_cast<char*>(malloc(file_len));
        EXPECT_TRUE(NULL != file_buf);
        int64_t read_size = 0;
        filesys.open(trailer_file_name, O_RDONLY);
        read_size = filesys.read(file_buf, file_len);
        EXPECT_EQ(read_size, file_len);

        int64_t pos = 0;
        pos = trailer.get_serialize_size();
        trailer_offset.trailer_record_offset_ = 0;
        trailer_offset.deserialize(file_buf, file_len, pos);
        EXPECT_EQ(trailer_offset.trailer_record_offset_, 256 * 1024 - 1023);

        pos = 0;
        trailer.deserialize(file_buf, file_len, pos);
        EXPECT_EQ(0x300, trailer.get_trailer_version());
        EXPECT_EQ(1, trailer.get_table_version());
        EXPECT_EQ(0, trailer.get_first_block_data_offset());
        EXPECT_EQ(1, trailer.get_row_value_store_style());
        EXPECT_EQ(1023, trailer.get_block_count());
        EXPECT_EQ(2047, trailer.get_block_index_record_offset());
        EXPECT_EQ(1024, trailer.get_block_index_record_size());
        EXPECT_EQ(8, trailer.get_bloom_filter_hash_count());
        EXPECT_EQ(2047 + 1024, trailer.get_bloom_filter_record_offset());
        EXPECT_EQ(511, trailer.get_bloom_filter_record_size());
        EXPECT_EQ(2047+ 1024 + 511, trailer.get_schema_record_offset());
        EXPECT_EQ(1023, trailer.get_schema_record_size());
        EXPECT_EQ(64 * 1024, trailer.get_block_size());
        EXPECT_EQ(777, trailer.get_row_count());
        EXPECT_EQ(123456789, (int64_t)trailer.get_sstable_checksum());
        EXPECT_EQ(1001, (int64_t)trailer.get_first_table_id());
        EXPECT_EQ(123456789, trailer.get_frozen_time());
        int ret = memcmp(compressor_name, trailer.get_compressor_name(), strlen(compressor_name));
        EXPECT_EQ(0, ret);
        EXPECT_TRUE(default_range == trailer.get_range());
        free(file_buf);
        file_buf = NULL;
        filesys.close();
      }
开发者ID:Alibaba-boonya,项目名称:oceanbase,代码行数:48,代码来源:test_sstable_trailer.cpp

示例3: free

      TEST_F(TestObSSTableTrailer, write_tariler_to_disk)
      {
        ObSSTableTrailer trailer;
        EXPECT_TRUE(default_range == trailer.get_range());
        FileUtils filesys;
        trailer.set_trailer_version(0x300);
        trailer.set_table_version(1);
        trailer.set_first_block_data_offset(0);
        trailer.set_row_value_store_style(1);
        trailer.set_block_count(1023);
        trailer.set_block_index_record_offset(2047);
        trailer.set_block_index_record_size(1024);
        trailer.set_bloom_filter_hash_count(8);
        trailer.set_bloom_filter_record_offset(2047 + 1024);
        trailer.set_bloom_filter_record_size(511);
        trailer.set_schema_record_offset(2047+ 1024 + 511);
        trailer.set_schema_record_size(1023);
        trailer.set_block_size(64 * 1024);
        trailer.set_row_count(777);
        trailer.set_sstable_checksum(123456789);
        trailer.set_first_table_id(1001);
        trailer.set_frozen_time(123456789);
        trailer.set_range_record_offset(2047+ 1024 + 511 +1023);
        trailer.set_range_record_size(0);
        const char *compressor_name = "lzo1x_1_11_compress";
        trailer.set_compressor_name(compressor_name);

        ObTrailerOffset trailer_offset;
        trailer_offset.trailer_record_offset_= 256 * 1024 - 1023;

        int64_t offset_len = trailer_offset.get_serialize_size();
        int64_t trailer_len = trailer.get_serialize_size();

        int64_t buf_size = offset_len + trailer_len;
        int64_t pos = 0;
        char *serialize_buf = reinterpret_cast<char*>(malloc(buf_size));
        EXPECT_TRUE(NULL != serialize_buf);
        trailer.serialize(serialize_buf, buf_size, pos);
        trailer_offset.serialize(serialize_buf, buf_size, pos);
        filesys.open(trailer_file_name, O_WRONLY | O_CREAT | O_TRUNC, 0644);
        int64_t write_size;
        write_size = filesys.write(serialize_buf, buf_size);
        EXPECT_EQ(write_size, buf_size);
        free(serialize_buf);
        serialize_buf = NULL;
        filesys.close();
      }
开发者ID:Alibaba-boonya,项目名称:oceanbase,代码行数:47,代码来源:test_sstable_trailer.cpp


注:本文中的FileUtils::close方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。