小编jms*_*ker的帖子

如何使用ofstream自动创建目录

我现在正在为一个基本的虚拟文件系统存档(没有压缩)编写一个提取器.

我的提取器在将文件写入不存在的目录时遇到问题.

提取功能:

void extract(ifstream * ifs, unsigned int offset, unsigned int length, std::string path)
{
    char * file = new char[length];

    ifs->seekg(offset);
    ifs->read(file, length);

    ofstream ofs(path.c_str(), ios::out|ios::binary);

    ofs.write(file, length);
    ofs.close();

    cout << patch << ", " << length << endl;

    system("pause");

    delete [] file;
}
Run Code Online (Sandbox Code Playgroud)

ifs是vfs根文件,offset是文件启动时的值,length是文件长度,path是文件中保存偏移len等的值.

例如,path是data/char/actormotion.txt.

谢谢.

c++ filestream

26
推荐指数
3
解决办法
4万
查看次数

获取CMake错误:无法为不是由项目构建的目标指定链接库

我在我的代码中实现了CMake但是我收到了错误

"无法为目标"Qt5 :: Widgets"指定链接库,这些链接库不是由项目构建的".

以下是CMakeLists.txt的内容:

#Specify the version being used aswell as the language
cmake_minimum_required(VERSION 2.6)

#Name your project here
project(eCAD)

#Sends the -std=c++11 flag to the gcc compiler
ADD_DEFINITIONS(-std=c++11)

#This tells CMake to main.cpp and name it eCAD
add_executable(eCAD main.cpp)


#include the subdirectory containing our libs
add_subdirectory (gui)
include_directories(gui)

#include Qt directories
find_package(Qt5Widgets)
find_package(Qt5Core)
find_package(Qt5Designer)
SET(QT_USE_QTDESIGNER ON)

#link_libraries
target_link_libraries(Qt5::Widgets Qt5::Core) 
Run Code Online (Sandbox Code Playgroud)

cmake

24
推荐指数
3
解决办法
3万
查看次数

使用XDocument编写XML时如何更改用于缩进的字符数

我试图将XDocument的默认缩进从2更改为3,但我不太确定如何继续.如何才能做到这一点?

我熟悉XmlTextWriter并使用过代码:

using System.Xml;

namespace ConsoleApp
{
    class Program
    {
        static void Main(string[] args)
        {
            string destinationFile = "C:\myPath\results.xml";
            XmlTextWriter writer = new XmlTextWriter(destinationFile, null);
            writer.Indentation = 3;
            writer.WriteStartDocument();

            // Add elements, etc

            writer.WriteEndDocument();
            writer.Close();
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

对于我使用的另一个项目,XDocument因为它对我的实现更有效,类似于:

using System;
using System.Collections.Generic;
using System.Xml.Linq;
using System.Xml;
using System.Text;

namespace ConsoleApp
{
    class Program
    {
        static void Main(string[] args)
        {
            // Source file has indentation of 3
            string sourceFile = @"C:\myPath\source.xml";
            string destinationFile = @"C:\myPath\results.xml";

            List<XElement> …
Run Code Online (Sandbox Code Playgroud)

c# xml linq-to-xml

15
推荐指数
1
解决办法
2893
查看次数

printf格式字符串中"% - *.*s"的含义是什么

#define FMT "%-*.*s e = %6ld, chars = %7ld, stat = %3u: %c %c %c %c\n"
Run Code Online (Sandbox Code Playgroud)

该宏传递给printf函数.什么%-*.*s意思?

c printf

6
推荐指数
1
解决办法
2万
查看次数

std :: strtol和std :: stoi有什么区别?

免责声明:链接指向cppreference.com

所以我早就知道std :: atoi已被弃用,并且建议使用std :: strtol.

C++ 11引入了std :: stoi,我试图理解为什么会选择使用它std::strtol.

根据我的理解,stoi调用strtol但抛出异常.它还返回一个整数而不是long.

这些是主要的差异,我错过了什么?

c++ c++11

5
推荐指数
1
解决办法
4413
查看次数

RTCPeerConnection的最大数量

我知道网络浏览器对同时发送的http请求数量有限制.但是,网页的开放RTCPeerConnection数量是否也有限制?

并且有些相关:RTCPeerConnection允许通过1个连接发送多个流.在1个连接中组合多个流或建立多个连接(例如每个流1个)之间的权衡是什么?

browser html5 webrtc

5
推荐指数
1
解决办法
1432
查看次数

为什么我没有使用DateTime.Now.ToString方法获取M/D/YYYY中的完整日期?

我正在使用DateTime.Now.ToString格式的方法,M/D/YYYY但没有得到所需的输出.相反,我得到了9/D/YYYY.请帮忙.目前,我的代码段如下:

DateTime d = DateTime.Now.Date;
            string Date = d.ToString("M/D/YYYY");
Run Code Online (Sandbox Code Playgroud)

c#

3
推荐指数
1
解决办法
1618
查看次数

如何在CMakeLists.txt中指定CMake的安装路径

我从官方站点下载了便携式CMake版本,并将其安装在我的主目录中?~/usr),因为我没有root或sudo权限。

如何在CMakeLists.txt中指定CMake的安装路径,例如~/usr/cmake-path/bin/cmake?

注意:我不想在Linux系统上使用默认版本的CMake,因为它太旧了(2.6版)

PS:

我知道CMAKE_COMMAND可能对我的问题有用的变量,但我不知道如何使用它!

c++ linux cmake

3
推荐指数
2
解决办法
2万
查看次数

C++开关语句结束菜单

嘿,我正在为我的C++编程类开发一个Switch选择菜单.我设法让我的菜单工作,但我不知道如何在我所做的菜单中的退出选择上停止程序.

我的代码是

#include <iostream>
using namespace std;

int main()
{
    char selection;

    do
    {
        cout << "  IHCC Computer Science Registration Menu\n";
        cout << "  ====================================\n";
        cout << "  1.  Welcome to Computer Programming In C++\n";
        cout << "  2.  Welcome to Java Programming\n";
        cout << "  3.  Welcome to Android Programming\n";
        cout << "  4.  Welcome to iOS Programming\n";
        cout << "\n";
        cout << "  5.  Exit\n";
        cout << "  ====================================\n";
        cout << "  Enter your selection: ";
        cin …
Run Code Online (Sandbox Code Playgroud)

c++ switch-statement

2
推荐指数
1
解决办法
3万
查看次数

RegEx没有特殊字符

我正在寻找一个正则表达式的麻烦,如果用户试图提交特殊字符,我会抛出一个错误"/" "\".我有一个表达已经有助于其他特殊字符而不是正向和反向斜线奖励:我不想要这些以太,但它不太可能会被输入.~,!,@,#,$,%,^,&,*,().

我目前正在使用 ^[\w{./\\(),'}+:?®©-]+$

regex asp.net

2
推荐指数
1
解决办法
6136
查看次数

标签 统计

c++ ×4

c# ×2

cmake ×2

asp.net ×1

browser ×1

c ×1

c++11 ×1

filestream ×1

html5 ×1

linq-to-xml ×1

linux ×1

printf ×1

regex ×1

switch-statement ×1

webrtc ×1

xml ×1