Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/spring-mvc/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
File io 为什么我尝试使用open for writing打开文件失败?Ada 95_File Io_Ada - Fatal编程技术网

File io 为什么我尝试使用open for writing打开文件失败?Ada 95

File io 为什么我尝试使用open for writing打开文件失败?Ada 95,file-io,ada,File Io,Ada,当我试图打开要写入的文件时,会出现Ada.IO_Exceptions.Name_错误 过程调用是Ada.Text\u IO.Open 文件名为“C:\CC\u TEST\u LOG.TXT”。此文件不存在 这是在NTFS分区上的Windows XP上。用户具有创建和写入目录的权限。 文件名远低于WIN32最大路径长度 name_2 : String := "C:\CC_TEST_LOG.TXT" if name_2'last > name_2'first then begin

当我试图打开要写入的文件时,会出现Ada.IO_Exceptions.Name_错误

过程调用是Ada.Text\u IO.Open

文件名为“C:\CC\u TEST\u LOG.TXT”。此文件不存在

这是在NTFS分区上的Windows XP上。用户具有创建和写入目录的权限。 文件名远低于WIN32最大路径长度

 name_2 : String := "C:\CC_TEST_LOG.TXT"
 if name_2'last > name_2'first then
    begin
       Ada.Text_IO.Open(file, Ada.Text_IO.Out_File, name_2);
       Ada.Text_IO.Put_Line(
          "CC_Test_Utils: LogFile: ERROR: Open, File "
          & name_2);
       return;
    exception
       when The_Error : others =>
          Ada.Text_IO.Put_Line(
             "CC_Test_Utils: LogFile: ERROR: Open Failed; "
              & Ada.Exceptions.Exception_Name(The_Error)
              & ", File " & name_2);
    end;
 end if;
如果“文件不存在”,您应该首先删除它


如果这与您的相关,则可能有助于提供更多详细信息。

与您的问题无关,但初始的If测试(name_2'last>name_2'first)似乎只是检查文件名是否为空。如果这是它的唯一目的,那么就这样做:如果name_2/=”“那么……Marc:是的,测试可以改进为name_2'Length/=0。我假设这比平等测试要快;但我需要做个人简介这是我最初遇到的问题。我在网上或书上都找不到答案。所以我把它放在这里供其他人参考。我想我明白了。您现在可以创建文件了吗?