判断dxf文件的版本

打开DXF参考手册,在DXF参考手册中,点击“索引”-->输入“HEADER”,在ACADBER字段有acd的版本信息:

下面是用C语言,写的判断dxf文件的版本的代码:

/*--------------------------------------------------
*读取DXF文件中,HEADER段中DXF文件版本号的小程序。
*----------------------------------------------------*/

#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <conio.h>

#define STRLEN 30

int main(int argc, char *argv[])
{
    int  code;                  /*存储组码*/
    char codevalue[STRLEN];     /*存储组码对应的值*/
    FILE *dxf;                  /*文件指针*/
    char filename[STRLEN];      /*文件名*/
    char suffix[6] = ".dxf";         /*只输入文件名打开DXF文件,不用输后缀.*/

    printf("请输入文件名:");
    gets(filename);
    strcat(filename,suffix);

    dxf = fopen(filename,"r");  /*打开文件进行读操作*/
    if(!dxf) {
        printf("打开文件出错!/n按任意键退出...");
        getch();
        exit(0);
    }
    else {
        printf("文件已经打开.\n正在读取.../n");
    }

    while(!feof(dxf)) {
        fscanf(dxf,"%d",&code);
        fscanf(dxf,"%s",codevalue);

        if(code == 2 && strcmp(codevalue,"HEADER")==0) {
            fscanf(dxf,"%d",&code);
            fscanf(dxf,"%s",codevalue);
            if(strcmp(codevalue,"$ACADVER")==0) {
                fscanf(dxf,"%d",&code);
                fscanf(dxf,"%s",codevalue);

                if(strcmp(codevalue,"AC1006")==0) {
                    printf("AutoCAD版本为R10.");
                }
                else
					if(strcmp(codevalue,"AC1009")==0) {
						printf("AutoCAD版本为R11和R12.");
					}
					else
						if(strcmp(codevalue,"AC1012")==0) {
							printf("AutoCAD版本为R13.");
						}
						else
							if(strcmp(codevalue,"AC1014")==0) {
								printf("AutoCAD版本为R14.");
							}
							else
								if(strcmp(codevalue,"AC1015")==0) {
									printf("AutoCAD版本为AutoCAD 2000.");
								}
								else
									if(strcmp(codevalue,"AC1018")==0) {
										printf("AutoCAD版本为AutoCAD 2004.");
									}
									else {
										printf("不能识别的AutoCAD版本!");
										break;
									}
            }
        }
    }

    fclose(dxf);                /*关闭文件*/
    printf("\n文件已经关闭.");
    printf("\nPress any key to halt...");
    getch();
	return 0;

}

效果如下:

判断dxf文件的版本,布布扣,bubuko.com

时间: 2024-08-05 20:00:52

判断dxf文件的版本的相关文章

远成文件的版本控制系统~~~浅析

远成文件的版本控制系统 ~~~~浅析 问题描述 大多数基于C/S模式的应用软件都存在客户端的版本更新问题.通常的解决方案是服务器端提供一个UpdateServer为每一个Client提供版本更新服务.更好一点的方案是在一个小型的局域网内部实现LocalUpdata,然后再与UpdateServer连接.解决方案一LocalUpdate: 每一个Client程序启动时,首先开始一个ServerThread并申请一个本地端口(每个Client的监听段口应一致,以便能收到Client发来的升级信息广播

iPhone 屏幕适配判断 和 iOS系统版本判断

? 1 2 3 4 5 6 7 8 9 if([[[UIDevicecurrentDevice]systemVersion]floatValue]>=7.0) {     // iOS7.0及以上版本系统适配 } if([UIScreen mainScreen].bounds.size.height == 568) {     // iPhone 屏幕适配 } 可以写成宏定义放在pch文件中, ? 1 2 3 4 // 判断是否为iPhone5 #define iPhone5 ([UIScree

基于ANYCAD的DXF文件读取与转换

写这篇文章的目的是我这段时间关于ANYCAD的一些学习感悟,并且附上具体的操作,使新手少走一些弯路. 本人是C#的新手,从来没接触过编程,暑期跟着老师做学习,第一个任务就是用C#打开DXF文件,我以为任务很简单,BUT 在网上搜索一大堆,都是没用的(对于我这个新手来讲),偶然一次看到一篇<基于AnyCAD.net 三维图形平台快速搭建DXF文件的读取.显示.转换成JPG, PNG,以及PDF>,了解了这个ANYCAD这个控件,但是这篇文章在我把代码输进去操作的时候发现对于我这个新手来说没太大用

DWG2SHP DXF2SHP 如何把AutoCAD的DWG,DXF文件转换为Esri ArcGIS的Shape文件

dwg是AutoCAD创立的一种图纸保存格式,已经成为二维CAD的标准格式,很多其他CAD为了兼容AutoCAD,也直接使用dwg作为默认工作文件. 地图shape文件由ESRI开发,一个ESRI的shape文件包括一个主文件,一个索引文件,和一个dBASE表.其中主文件的后缀就是.shp 这里介绍如何利用开源软件QCAD和QGIS转换过程. QCad 是一个专业的 CAD 系统.QCad 使用户能够创建技术图纸,如计划.建筑.室内装饰.机械部件或架构和图表. 它采用 DXF 文件作为其标准的文

Allegro16.6和17.0和17.2中将板框导出DXF文件

Allegro16.6和17.0和17.2中将板框导出DXF文件 转载 https://blog.csdn.net/pieces_thinking/article/details/69817600 标签: Cadence / allegro5 / dxf文件解析 注意:在CAD生成的DXF文件导入Allegro的过程中,发现只有R12版本的才比较好用,故从Allegro中导出DXF时,也导成R12格式的比较好.步骤如下: 1.File->Export->DXF-先把路径设置好  2.设置转换文

如何判断WLC的FUS版本

有些时候,我们在升级WLC的时候,被告知需要升级WLC的FUS,以防止某些漏洞和不必要的情况发生. 1.什么是FUS? Field Upgrade Software (FUS),翻译过来,叫"现场升级软件",这叫起来太别扭了,也不和中文语境,还是不翻译的得好. 简单的说,FUS就是FUS是一种特殊的AES包,可执行各种与系统相关的组件升级. 我们建议您安装FUS映像,以将引导加载程序(bootloader),现场恢复映像(field recovery image),FPGA / MCU

linux g++编译dxf文件C++解析库dxflib

DXFLIB是一个用于读取和写入AutoCAD(R)DXF文件的开源C++库.它提供读取和写入许多基本实体的功能,以及有关层和块的信息.来自QCAD的作者.最新版本下载地址:https://www.ribbonsoft.com/en/dxflib-downloads旧版本下载:https://sourceforge.net/projects/dxflib/使用手册:http://www.ribbonsoft.com/dxflib/manual.pdf中文翻译:https://www.xuebuy

JavaScript判断浏览器类型及版本

说明:以下内容参考了一些网上资料以及同事间的一些讨论. 浏览器对于我们来说,可能是最熟悉的工具了.记得最早那会Netscape,到后来的Internet Explorer一统江湖,再到现在的FireFox大行其道,浏览器市场的争夺,可谓是硝烟弥漫.除了我们常见的IE, Firefox, Opera, Safari四大金刚以外,新近又出了一位Chrome,虽然新出,但是出于Google这个名门,Chrome所受到的关注绝不亚于先前的四大金刚,看来以后要改为5朵金花了,呵呵.除了这些熟知的浏览器以外

判断远程文件是否存在

public bool UriExists(string url)        {             try             {                 new System.Net.WebClient().OpenRead(url);                return true;            }            catch (System.Net.WebException)            {                 return