QGIS does not recognize .prj file, which is part of a shapefile.

ArcMap does automatically recognize .prj file, when you add shapefile to ArcMap layer, you click property, coordinate tab, you can see the correct CRS (coordinate reference system) already set there.

However, QGIS failed to recognize .prj file, instead you have to manually set CRS in QGIS.

But how?


2 Answers 2


Qgis recognise .prj files but "do not provide the complete projection parameters as used in QGIS". Qgis generate .prj file as well to be compatible with Esri software and store is own projection parameter under .qpj file.

From the qgis doc

Problem loading a shape .prj file

If you load a shapefile with a .prj file and QGIS is not able to read the coordinate reference system from that file, you will need to define the proper projection manually within the General tab of the Layer Properties dialog of the layer by clicking the [Specify...] button. This is due to the fact that .prj files often do not provide the complete projection parameters as used in QGIS and listed in the CRS dialog.

For the same reason, if you create a new shapefile with QGIS, two different projections files are created: a .prj file with limited projection parameters, compatible with ESRI software, and a .qpj file, providing the complete parameters of the used CRS. Whenever QGIS finds a .qpj file, it will be used instead of the .prj.


enter image description here

qgis, right bottom corner, click the icon, open project property/crs

in filter, type "california", find zone 5, (.prj file tells me, it is state plan california zone 5)

This way, I got EPSG:102645, this is qgis bug, it should be ESRI:102645

In fact,

ESRI:102645 = EPSG:2229

compare above two's proj.4, are same.

NOTE: qgis use proj.4 text as coordinate reference, while arcmap use .prj file.

In filter, search 2229, you will find EPSG:2229, ESRI:102645 and EPSG:2229 both works, both's proj.4 text are identical.

But how I know EPSG:2229?

there are 2 way:

1) go to http://prj2epsg.org/search, upload .prj or copy past content of .prj file. click convert,

2) use arcinfo, right click shape file, choose property, coordinate x y tab, wkid = 2229 EPSG enter image description here

Note: qgis do not support .prj file, arcmap do support. qgis support proj.4 text, you have to set crs from .prj.

.prj file tells me it is california state plan zone 5, I can search for .prj file tells me EPSG:2229

anyway, you have to help qgis to figure out .prj file.

  • This is a lack of standarization of .prj files AFAIK, it is hard to blame Qgis for it. That is why .prj can be described as a well-wkonw text and the EPSG code as a standard.
    – Marco
    Commented Oct 30, 2017 at 8:17
  • 1
    What you are showing here is the project CRS and not the shapefile CRS. Commented Oct 31, 2017 at 7:54
  • Here Project CRS use the same one as shapefile CRS. You could use different project CRS from shapefile CRS, but it does not make sense here. unless, you have multi shapefile with multi different CRS for each one, the project CRS, you could use any one, that could different from any shapefile, and QGIS has 'on the fly transform' capability.
    – hoogw
    Commented Nov 1, 2017 at 16:05

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.