Skip to main content

Stream and convert BCP format files

Project description

BCP Reader

A reader for BCP-format data files. BCP files are similar to CSV files but contain a multi-character line and field delimiters. The default delimiters used are:

  • field delimiter: @**@
  • line delimiter: *@@*

Python's csv module can only deal with single character delimiters, so this module has a reader function and DictReader class which should be drop-in replacements for python's csv module equivalents.

Credits

The author of the main method is Gertjan van den Burg of the Alan Turing Institute. It was based on a method originally developed by David Kane at NCVO.

Installation

Install with pip install bcp-reader

Usage

The module can be used by importing from the bcp module in a python script:

import bcp

with open('path_to_bcp_file.bcp') as f:
    bcpreader = bcp.reader(f)
    for row in bcpreader:
        print(row)
        # ["Value 1", "Value 2"]

with open('path_to_bcp_file.bcp') as f:
    bcpreader = bcp.DictReader(f, fieldnames=["field 1", "field 2"])
    for row in bcpreader:
        print(row)
        # {"field 1": "Value 1", "field 2": "Value 2"}

You can also use it via the command line to convert a BCP file to CSV:

bcp path_to_bcp_file.bcp > csv_output.csv

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

bcp-reader-0.1.1.tar.gz (3.4 kB view hashes)

Uploaded Source

Built Distribution

bcp_reader-0.1.1-py3-none-any.whl (4.6 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page