标签: file-io

将浮点数读入动态分配的数据,同时在读取文件时增加数组的大小

我试图从文件中读取浮点数到动态分配的2D数组.我正在使用c ++.

在我的.txt文件中,行的元素由制表符空间分隔,每行以新行开头.

我的问题是 -

我可以根据编号增加数组的大小吗?文件中存在的元素(行和列)?如果是这样,请建议一种方法.

我想写了不.在文本文件的第一行上的行和列,并在开头读取它们以设置将为我的数组分配空间的循环限制.有没有更好的方法,可能基于文本文件的格式?这样,我认为它将更接近流数据类型的场景.

提前致谢.

AKHIL

c++ arrays file-io

0
推荐指数
1
解决办法
1420
查看次数

为什么我分配的缓冲区大小不合适?

我使用了fread函数,我得到了一个4的缓冲区和一个"读错误".

为什么我buffer不是fileSize

这是我的代码:

FILE *fp;
char* buffer;
fp = fopen("help.txt","r");
if (fp == NULL){
    fputs("Can't open Help file, Help.txt",stderr);
exit(1);
}
fseek(fp, 0, SEEK_END);
long fileSize = ftell(fp);
rewind(fp);

buffer = (char*) malloc (sizeof(char)*fileSize);
if(buffer == NULL){
    fputs("Memory Allocation Error",stderr);
    exit(2);
}

size_t result = fread(buffer,1,fileSize,fp);
if(result != fileSize){
fputs("Reading error\n",stderr);
printf("File Size : %lu\n",fileSize);
printf("Result : %lu\n",result);
printf("Buffer Size : %u\n",sizeof(buffer));
exit(3);
}

fputs(buffer,stdout);

fclose(fp);
free (buffer);
Run Code Online (Sandbox Code Playgroud)

这是我运行程序时的输出:

Reading error
File Size : 224
Result …
Run Code Online (Sandbox Code Playgroud)

c++ file-io

0
推荐指数
1
解决办法
161
查看次数

在Fortran77中打开/读取.dat文件

我正在尝试读取.dat文件中的一组点,并通过我的.f文件中的算法运行这些点.我一直在使用OPEN声明:

OPEN(UNIT=1,FILE='POINTS.DAT',FORM='UNFORMATTED')
Run Code Online (Sandbox Code Playgroud)

而对于一个初学者,一直试图打印出.dat中的值 - 不工作.

PRINT *, 1

PRINT *, POINTS.DAT

PRINT *, 'POINTS.DAT'
Run Code Online (Sandbox Code Playgroud)

我是否应该试图打印出值?我应该如何索引.dat中的值?我应该做一个DO循环,并通过我文件中的数据点循环n次吗?我该如何调用这些值?

file-io fortran file fortran77

0
推荐指数
1
解决办法
2655
查看次数

C++打开文件流

所以我基本上需要我的程序来打开文件并做一些事情.当程序要求用户输入文件名,并且用户第一次正确输入文件名时,操作正常.但是如果用户输入错误的名称,程序会说"无效名称再次尝试",但即使用户正确键入名称,它也永远无法打开文件.这是代码:

ifstream read_file(file.c_str());
while(true)
{
    if(!(read_file.fail()))
    { 
        ...
    }
    else 
    {
        cout << "Either the file doesn't exist or the formatting of the file is incorrect. Try again.\n>";
    }
    cin >> file;
    ifstream read_file(file.c_str());
}
Run Code Online (Sandbox Code Playgroud)

有什么问题,有什么想法吗?谢谢

c++ file-io filestream

0
推荐指数
1
解决办法
561
查看次数

如何使用BufferedReader读取文件的第一行?

我正在尝试使用BufferedReader将第一行文件读取为字符串.我该怎么做呢?另外我怎样才能将整个文件读成字符串?如何在readline(int line)不迭代前一行的情况下读取特定行?

File namefile = new File(root, ".name");
FileReader namereader = new FileReader(namefile);
BufferedReader in = new BufferedReader(namereader);
Run Code Online (Sandbox Code Playgroud)

java io file-io android

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

.NET中的字符编码

我已将excel 2007文档导出为CSV(以分号分隔).我正在使用CZECH office 2010和捷克Windows 7.

当我在.net C#中读取文件时,带有特殊捷克符号的文本已损坏.就在我使用的时候

像string [] lines = file.readalllines(path); (来自System.IO.File)

所以我想我需要专门提供正确的编码,对吗?所以我试过了:

string[] lines = File.ReadAllLines(path,encoding);
Run Code Online (Sandbox Code Playgroud)

编码变量被定义为

Encoding encoding = Encoding.UTF8 for example.
Run Code Online (Sandbox Code Playgroud)

没有选项有效.最奇怪的是,其中一些,比如Encoding.Unicode甚至扔了

IndexOutOfRandgeException
Run Code Online (Sandbox Code Playgroud)

.

我该如何解决这个编码问题?谢谢.

顺便说一句,我的办公室设法以正确的方式打开和阅读该文件.

.net c# file-io encoding file

0
推荐指数
1
解决办法
6463
查看次数

如何获取某些文件集的大小?

例如.我有文件夹"MyFolder"我希望获得文件名为" *D.*" 的所有文件的大小

有一个简单的方法来做到这一点?

(PS我知道整个文件夹,我可以使用TotalSize()来获取它的大小,但是我的约束怎么样?)

c# file-io .net-4.0

0
推荐指数
1
解决办法
111
查看次数

从客户端到服务器传输图像(*.jpeg,*.png等)文件

在我的java应用程序中,我想将一些图像从客户端传输到服务器.我使用Socket连接客户端和服务器.当我将字符串从客户端传输到服务器但我无法传输图像文件时,它正在工作.

我在用

BufferedInputStream
BufferedOutputStream

用于传输字符串.

我知道要传输文件我需要使用FileInputStream:

BufferedInputStream bis bis = new BufferedInputStream(new FileInputStream("111.JPG"));
Run Code Online (Sandbox Code Playgroud)

但我不知道,究竟需要写什么.所以请通过一些代码示例给出答案.

java sockets file-io file-upload

0
推荐指数
1
解决办法
7276
查看次数

处理文件时出现奇怪的分段错误

我试图解析一个文件,我得到一个奇怪的分段错误.这是我正在使用的代码:

#include <iostream>

using namespace std;

int main ()
{
    FILE *the_file;
    the_file = fopen("the_file.txt","r");

    if (the_file == NULL)
    {
        cout << "Error opening file.\n";
        return 1;
    }

    int position = 0;
    while (!feof(the_file))
    {
        unsigned char *byte1;
        unsigned char *byte2;
        unsigned char *byte3;
        int current_position = position;

        fread(byte1, 1, 1, the_file);
    }
}
Run Code Online (Sandbox Code Playgroud)

我用命令编译它

g++ -Wall -o parse_file parse_file.cpp
Run Code Online (Sandbox Code Playgroud)

如果我删除while循环中声明current_position的行,代码运行没有问题.我也可以将该声明移到unsigned char指针的声明之上,代码将无问题地运行.为什么它会在声明中出现错误?

c++ file-io segmentation-fault variable-declaration

0
推荐指数
1
解决办法
78
查看次数

不关闭此代码段中的文件是不好的做法吗?

关于我在代码中明确打开的文件是多么必要的想法,只是一些想法.我来自C和C++编程的背景,并开始通过Ruby导航.提前感谢您的反馈.

from_file, to_file = ARGV
script = $0

puts "Copying from #{from_file} to #{to_file}"
File.open(to_file, 'w').write(File.open(from_file).read())

puts "Alright, all done."
Run Code Online (Sandbox Code Playgroud)

ruby file-io

0
推荐指数
1
解决办法
199
查看次数