---
title: "Sort images and save as TIFF files based on barcodes in C#"
canonical_url: "https://www.nutrient.io/guides/dotnet/samples/barcode-auto-sorting-cs/"
md_url: "https://www.nutrient.io/guides/dotnet/samples/barcode-auto-sorting-cs.md"
last_updated: "2026-05-21T17:12:02.215Z"
description: "Learn how to sort image files and save them as TIFFs in folders based on detected barcode types using C#. Optimize your workflow with this code example!"
---

# Saving images into folders based on their barcode

This example shows how to sort image files and save them as TIFF files in different folders based on the barcode type detected within the image.

[Get Started](https://www.nutrient.io/sdk/dotnet/getting-started.md)

[All Samples](https://www.nutrient.io/guides/dotnet/samples.md)

[Download](https://www.nutrient.io/guides/dotnet/downloads.md)

[Launch Demo](https://www.nutrient.io/demo/)

---

### C#

[C#](https://www.nutrient.io/guides/dotnet/samples/barcode-auto-sorting-cs.md)

### VB.NET

[VB.NET](https://www.nutrient.io/guides/dotnet/samples/barcode-auto-sorting-vbnet.md)

```cs

//We assume that GdPicture has been correctly installed and unlocked.
GdPictureImaging oGdPictureImaging = new GdPictureImaging();
String filePath = "Pictures\\barcodes";
String distPath = "Pictures\\barcodeTypes\\";
String[] allImages = Directory.GetFiles(filePath);
int bcfound = 0;
int m_Image = 0;
GdPictureStatus status = GdPictureStatus.OK;
foreach (string imagePath in allImages)
{
   bcfound = 0;
   m_Image = oGdPictureImaging.CreateGdPictureImageFromFile(imagePath);
   if (oGdPictureImaging.GetStat()!= GdPictureStatus.OK)
   {
	  MessageBox.Show("Error: " + oGdPictureImaging.GetStat().ToString(), "Barcode Example", MessageBoxButtons.OK, MessageBoxIcon.Error);
	  break;
   }
   status = oGdPictureImaging.Barcode1DReaderDoScan(m_Image, Barcode1DReaderScanMode.BestSpeed);
   if (status!= GdPictureStatus.OK)
   {
	  MessageBox.Show("Error: " + status.ToString(), "Barcode Example", MessageBoxButtons.OK, MessageBoxIcon.Error);
	  oGdPictureImaging.ReleaseGdPictureImage(m_Image);
	  break;
   }
   bcfound = oGdPictureImaging.Barcode1DReaderGetBarcodeCount();
   if (bcfound > 0)
   {
	  for (int i = 1; i <= bcfound; i++)
	  {
		 String barcodeType = oGdPictureImaging.Barcode1DReaderGetBarcodeType(i).ToString();
		 String folderName = String.Concat(barcodeType, "\\");
		 String imageName = String.Concat(i.ToString(), ".tif");
		 String completePath = String.Concat(Path.Combine(distPath, folderName), imageName);
		 status = oGdPictureImaging.SaveAsTIFF(m_Image, completePath, TiffCompression.TiffCompressionAUTO);
		 if (status!= GdPictureStatus.OK)
		 {
			MessageBox.Show("Error: " + status.ToString(), "Barcode Example", MessageBoxButtons.OK, MessageBoxIcon.Error);
			break;
		 }
	  }
   }
   oGdPictureImaging.ReleaseGdPictureImage(m_Image);
   if (status!= GdPictureStatus.OK)
	  break;
}
oGdPictureImaging.Dispose();

```

This code sample is an example that illustrates how to use our SDK. Please adapt it to your specific use case.

---

## Related pages

- [Saving images into folders based on their barcode](/guides/dotnet/samples/barcode-auto-sorting-vbnet.md)
- [Automatically rotate pages of a multipage TIFF file using OCR and C#](/guides/dotnet/samples/auto-rotate-tiff-cs.md)
- [Generate a multipage TIFF file using a compression mode per page in C#](/guides/dotnet/samples/create-multipage-tiff-cs.md)
- [Automatically rotate pages of a multipage TIFF file using OCR and VB.NET](/guides/dotnet/samples/auto-rotate-tiff-vbnet.md)
- [Converting a Microsoft Word binary file document (DOC) to a Microsoft Word OpenXML document (DOCX) in C#](/guides/dotnet/samples/doc-to-docx-cs.md)
- [Convert PDFs, MS Office, and images to TIFF in C#](/guides/dotnet/samples/convert-to-tiff-cs.md)
- [Using an external OCR engine during PDF/OCR generation](/guides/dotnet/samples/integrate-omnipage-ocr-cs.md)
- [Merging two PDF documents by alternating pages from both files in C#](/guides/dotnet/samples/merge-pdf-alternate-pages-cs.md)
- [Merging two PDF documents by alternating pages from both files in VB.NET](/guides/dotnet/samples/merge-pdf-alternate-pages-vbnet.md)
- [Recompress an existing PDF using color detection in C#](/guides/dotnet/samples/recompress-pdf-cs.md)
- [Converting a multipage PDF to a multipage TIFF using color detection in C#](/guides/dotnet/samples/pdf-to-tiff-color-detection-cs.md)
- [Converting a multipage PDF to a multipage TIFF using color detection in VB.NET](/guides/dotnet/samples/pdf-to-tiff-color-detection-vbnet.md)
- [Recompress existing PDFs using MRC compression in C#](/guides/dotnet/samples/recompress-pdf-mrc-cs.md)
- [Recompress existing PDFs using MRC compression in VB.NET](/guides/dotnet/samples/recompress-pdf-mrc-vbnet.md)
- [Highlight and crop an image in C#](/guides/dotnet/samples/select-image-crop-area-cs.md)
- [Recompress an existing PDF using color detection in VB.NET](/guides/dotnet/samples/recompress-pdf-vbnet.md)
- [Highlight and crop an image in VB.NET](/guides/dotnet/samples/select-image-crop-area-vbnet.md)
- [Highlight a region in a PDF or an image in C#](/guides/dotnet/samples/select-pdf-image-region-cs.md)
- [Highlight a region in PDF or an image in VB.NET](/guides/dotnet/samples/select-pdf-image-region-vbnet.md)
- [Save bitonal TIFFs with VB.NET using photometric 0](/guides/dotnet/samples/tiff-photometric-vbnet.md)
- [Choosing the appropriate OCR zone in C#](/guides/dotnet/samples/select-ocr-zone-cs.md)
- [Save bitonal TIFF images with C# and CCITT4](/guides/dotnet/samples/tiff-photometric-cs.md)
- [Choosing the appropriate OCR zone in VB.NET](/guides/dotnet/samples/select-ocr-zone-vbnet.md)
- [Convert a multipage TIFF to a multipage JBIG2 in C#](/guides/dotnet/samples/tiff-to-jbig2-cs.md)
- [Convert a multipage TIFF to a multipage JBIG2 in VB.NET](/guides/dotnet/samples/tiff-to-jbig2-vbnet.md)

