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


C++ FileManager::OpenFile方法代码示例

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


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

示例1: LoadFromFile

	bool TextureAtlas::LoadFromFile(const std::string& filePath)
	{
		FileManager fr;
		fr.OpenFile(filePath);

		tinyxml2::XMLDocument doc;
		if (doc.Parse(fr.ReadText().c_str()))
			return false;

		const tinyxml2::XMLElement* element = doc.FirstChildElement();
		m_texture = uthRS.LoadTexture(element->FindAttribute("imagePath")->Value());

        if (!m_texture)
            return false;

		for (const tinyxml2::XMLElement* child = element->FirstChildElement(); child != nullptr; child = child->NextSiblingElement())
		{
			std::string name(child->FindAttribute("name")->Value());
			pmath::Rect rect;

			float x = child->FindAttribute("x")->FloatValue(),
				y = child->FindAttribute("y")->FloatValue();

			rect.position.x = x / m_texture->GetSize().x;
			rect.position.y = y / m_texture->GetSize().y;
			rect.size.x = child->FindAttribute("width")->FloatValue() / m_texture->GetSize().x;
			rect.size.y = child->FindAttribute("height")->FloatValue() / m_texture->GetSize().y;

			m_textureRects.insert(std::make_pair(name, rect));
		}
		return true;
	}
开发者ID:Flchsh,项目名称:CavemanInSpace,代码行数:32,代码来源:TextureAtlas.cpp

示例2: LoadFromFile

bool Font::LoadFromFile(const std::string& filePath)
{
	FileManager fr;
	fr.OpenFile(filePath);
	m_fontData = fr.ReadBinary();

	if (!m_fontData.ptr())
		return false;
	m_loaded = true;
	return true;
}
开发者ID:Freeman117,项目名称:Orbital-DefenseRemade,代码行数:11,代码来源:Font.cpp

示例3: main

int main(int argc, char *argv[])
{
  if (argc < 2)
  {
    usage();
    return 0;
  }
  
  FileManager fm;
  Utils u;
  Editor ed (fm);
  const char *fileName;
  
  int fopenfileatline = FALSE;
  int ffde = FALSE;

  int fhelp = FALSE, fvers = FALSE;
  
  for (int i = 0; i < argc; i++)
  {
    if ((strcmp("-h", argv[i]) == 0) || (strcmp("--help", argv[i]) == 0))
    {
      show_help();
      fhelp = TRUE;
      break;
    }

    if ((strcmp("--version", argv[i]) == 0))
    {
      show_version();
      fvers = TRUE;
      break;
    }

    if (argv[i][0] == '+')
    {
      fopenfileatline = TRUE;
      break;
    }

    if (fm.FileExists(argv[i]) < 0)
    {
      ffde = TRUE;
      fileName = argv[i];
      break;
    }
  }

  // Check flags

  if (fhelp || fvers)
    return 0;
  
  if (ffde)
  {
    if (fm.CreateFile(fileName) == 0)
    {
      if (fm.OpenFile(fileName) < 0)
      {
	printf("[" RED "*" NORMAL "] No se pudo abrir el archivo \"%s\"\n", fileName);
	return -1;
      }
      else
      {
	if (ed.EditFile() < 0)
        {
	  printf("[" RED "*" NORMAL "] No se pudo editar el archivo \"%s\"\n", fileName);
	  return -1;
        }
      }
    }
    else
      printf("[" RED "*" NORMAL "] No se pudo crear el archivo \"%s\"\n", fileName);
  }
  else
  {
    if (fopenfileatline)
    {

    }
    else
    {
      if (fm.OpenFile(fileName) < 0)
      {
	printf("[" RED "*" NORMAL "] No se pudo abrir el archivo \"%s\"\n", fileName);
	return -1;
      }
      else
      {
	if (ed.EditFile() < 0)
        {
	  printf("[" RED "*" NORMAL "] No se pudo editar el archivo \"%s\"\n", fileName);
	  return -1;
        }
      }
    }
  }
  
  return 0;
}
开发者ID:Algoru,项目名称:emc,代码行数:100,代码来源:Main.cpp


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