An open API service indexing awesome lists of open source software.

https://github.com/developerstoolbox/data-converter-package

A data converter package to convert data between JSON, YAML and XML.
https://github.com/developerstoolbox/data-converter-package

data-converter json wolfsoftware xml yaml

Last synced: 9 months ago
JSON representation

A data converter package to convert data between JSON, YAML and XML.

Awesome Lists containing this project

README

          



DevelopersToolbox logo




Github Build Status


License


Created




Release


Released


Commits since release















## Overview

The `wolfsoftware.data-converter` module provides functionalities for converting data between JSON, XML, and YAML formats.
It includes methods to convert dictionaries to and from these formats, making it a versatile tool for data transformation in Python applications.

## Installation

First, install the package using pip:

```bash
pip install wolfsoftware.data-converter
```

## Usage

### Importing the Module

To use the `DataConverter` class, import it from the `wolfsoftware.data_converter` package:

```python
from wolfsoftware.data_converter import DataConverter, DataConverterError
```

### Initializing the DataConverter

The `DataConverter` class requires data and its type as parameters during initialization. Supported data types are `json`, `xml`, `dict`, and `yaml`.

```python
# JSON data example
json_data = '{"name": "John", "age": 30}'
converter = DataConverter(json_data, data_type='json')

# XML data example
xml_data = 'John30'
converter = DataConverter(xml_data, data_type='xml')

# Dictionary data example
dict_data = {'name': 'John', 'age': 30}
converter = DataConverter(dict_data, data_type='dict')

# YAML data example
yaml_data = 'name: John\nage: 30\n'
converter = DataConverter(yaml_data, data_type='yaml')
```

### Converting Data

#### To JSON

Convert the data to JSON format using the `to_json` method:

```python
json_output = converter.to_json()
print(json_output)
```

#### To XML

Convert the data to XML format using the `to_xml` method:

```python
xml_output = converter.to_xml()
print(xml_output)
```

#### To YAML

Convert the data to YAML format using the `to_yaml` method:

```python
yaml_output = converter.to_yaml()
print(yaml_output)
```

### Example Usage

Here's a complete example demonstrating how to convert a dictionary to JSON, XML, and YAML formats:

```python
from wolfsoftware.data_converter import DataConverter, DataConverterError

# Dictionary data
data = {'name': 'John', 'age': 30}

# Initialize DataConverter
converter = DataConverter(data, data_type='dict')

# Convert to JSON
json_output = converter.to_json()
print("JSON Output:")
print(json_output)

# Convert to XML
xml_output = converter.to_xml()
print("XML Output:")
print(xml_output)

# Convert to YAML
yaml_output = converter.to_yaml()
print("YAML Output:")
print(yaml_output)
```

### Handling Unsupported Data Types

If an unsupported data type is provided, a `DataConverterError` will be raised:

```python
try:
converter = DataConverter(data, data_type='unsupported')
except DataConverterError as e:
print(f"Error: {e}")
```