为啥我的arcgis打不开shape文件?打开文件夹的时候,根本就不会显示shape文件??

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了为啥我的arcgis打不开shape文件?打开文件夹的时候,根本就不会显示shape文件??相关的知识,希望对你有一定的参考价值。

shape文件谁要你把arcgis软件打开,在把shape文件添加进去,不是直接打开shape文件。要不然就是你的shape文件不全追问

请大神留个Q...orz

追答

379093111

参考技术A shp文件损坏或者残缺,一个SHP文件最起码要有DBF,SHP,SHX三个文件才可以打开。 参考技术B 文件打开方式不对 选择用打开方式打开追问

打开方式里没有arcgis这一项啊

不知道为啥文件打不开

【中文标题】不知道为啥文件打不开【英文标题】:I don't know why the file won't open不知道为什么文件打不开 【发布时间】:2021-09-04 23:40:56 【问题描述】:

这是我的代码

#define _CRT_SECURE_NO_WARNINGS    
#include <stdio.h>    
#include <stdlib.h>

#define TRUE    1
#define FALSE   0

typedef struct     
    int M,N;    
    int min,max;    
    int width;    
    int height;    
    unsigned char **pixels;    
PPMIMG;
    
int fnReadPPM(char* fileNm,PPMIMG* img);

int main(int argc, char ** argv)
    
    PPMIMG img;        

    if(fnReadPPM(argv[1], &img) != FALSE)
        
        return TRUE;    
    

    return  0;


int fnReadPPM(char* fileNm ,PPMIMG* img)
    
    FILE* fp;    
    fp = fopen("/users/ashton/Downloads/test.txt","rb");
    
    if(fileNm == NULL)    
        fprintf(stderr,"Unable to File ! : %s\n",fileNm);    
        return FALSE;    
    
    
    fclose(fp);    
    return TRUE;


int fnWritePPM(char* fileNm, PPMIMG* img)
    
    FILE *fp =fopen(fileNm, "w");    
    if(fp == NULL)
        
        fprintf(stderr, "Failed to create the file.");    
        return FALSE;    
            
    return TRUE;

这是错误代码:

Unable to File ! : (null)
Program ended with exit code: 0 

【问题讨论】:

检查errno的值,或者只使用perror函数。 实际上,这个特定的错误消息似乎不是由文件打开本身引起的,而是fileNm不是从命令行提供的。 不要在代码的每一行之间添加空白行。它使它的可读性降低,可读性代码非常重要,尤其是对于编写它的人。 使用perror() 了解您遇到的错误。 那么,我应该使用fileNm以外的东西吗? 【参考方案1】:

问题最有可能在这里:

int fnReadPPM(char* fileNm ,PPMIMG* img)

    FILE* fp;
    fp = fopen("/users/ashton/Downloads/test.txt","rb"); // you assign fp
    
    if (fileNm == NULL)                                // and here you check for fileNm 
        fprintf(stderr,"Unable to File ! : %s\n",fileNm);
        return FALSE;
        
    ...

你想要这个:

int fnReadPPM(char* fileNm ,PPMIMG* img)

    FILE* fp;
    fp = fopen("/users/ashton/Downloads/test.txt","rb");
    
    if (fp == NULL) 
        fprintf(stderr,"Unable to open file %s.\n", fileNm);
        return FALSE;
        
    ...

但是在fnWritePPM 函数中你做对了。

【讨论】:

非常感谢!我使用 fp 而不是 fileNm,然后该代码开始构建【参考方案2】:

你错误地测试了 fopen 返回值:

fp = fopen("/users/ashton/Downloads/test.txt","rb");
if (fp == NULL)     //<===== Was WRONG, you used fileNm instead of fp
    perror("Unable to File");
    return FALSE;

【讨论】:

非常感谢!我使用 fp 而不是 fileNm,然后该代码开始构建

以上是关于为啥我的arcgis打不开shape文件?打开文件夹的时候,根本就不会显示shape文件??的主要内容,如果未能解决你的问题,请参考以下文章

ArcGIS10.1之前能用,今天突然打不开并跳出这个窗口怎么办?

为啥在arcgis10中mxd格式不能打开

arcgis打不开mdb格式的文件是怎么回事?

为啥我的chm文件打不开

为啥我的苹果电脑打不开pkg文件

Arcgis 9.3 打不开Arcmap