Sign up ×
Geographic Information Systems Stack Exchange is a question and answer site for cartographers, geographers and GIS professionals. It's 100% free, no registration required.

I have a polyline shapefile with about 20 kinds of roads.

I would like to know how can I create automatically a vector file for each one.

I am aware of how to do it using ArcGIS for Desktop - see Exporting feature class into multiple feature classes based on field values using ArcGIS for Desktop?

How do I do it using QGIS, GDAL, SAGA, etc?

share|improve this question
I posted an answer similar to your question before about this, see… –  artwork21 May 18 '12 at 17:10
this isn't a complete duplicate, the Q linked to is ArcGIS only while this one is open to other platforms. An important difference for me today ;-) –  matt wilkie Mar 12 at 20:57
@mattwilkie To make this not be a duplicate then all that would appear to be needed is an edit that excludes ArcGIS for Desktop. If an alternative software is needed then I think that should be specifically stated so that the more focussed question can be researched/answered. –  PolyGeo Mar 12 at 21:49
@mattwilkie Unfortunately, editing this question to de-duplicate it has meant that a number of answers have been stranded. I'll ping their authors to suggest they delete them here and, if still relevant, post them to the Q&A that relates to ArcGIS for Desktop instead. –  PolyGeo Mar 12 at 22:56

4 Answers 4

In QGIS 2.8.1 there's a tool in the Vector menu that can split a dataset based on an attribute.

Look in Vector > Data Management Tools > Split Vector Layer...

split vector layer tool in QGIS 2.8.1

It's a basic tool that should work if you don't want to resort to plugins or tools in Processing; unless they offer additional functionality you need.

share|improve this answer

Quantum GIS has a plugin called ShapefileSplitter which does this.

share|improve this answer

You could consider saga gis (either directly or through sextante in qgis). It contains a module that will split a shape by attribute (shapes/tools/ split table/shape by attribute).

share|improve this answer

On the processing toolbox of QGIS, if you go the example scripts of the Scripts section. You'll find the script called "Split vector layer by attribute". That'll do what you need.

share|improve this answer
is this different from the plugin suggested by @oeon? –  matt wilkie Mar 12 at 21:00

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

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