New Case Study:See how Anthropic automated 95% of dependency reviews with Socket.Learn More
Socket
Sign inDemoInstall
Socket

dbf

Package Overview
Dependencies
Maintainers
1
Versions
9
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

dbf - npm Package Compare versions

Comparing version 0.0.2 to 0.1.0

.travis.yml

4

index.js

@@ -1,3 +0,1 @@

module.exports.header = require('./src/header');
module.exports.record = require('./src/record');
module.exports.writer = require('./src/writer');
module.exports.structure = require('./src/structure');

@@ -1,12 +0,18 @@

var dbf = require('./');
var dbf = require('./'),
fs = require('fs');
dbf.writer([
{
type: 'C',
name: 'foo'
var buf = dbf.structure([
{foo:'bar',noo:10},
{foo:'louie'}
]);
fs.writeFileSync('foo.dbf', toBuffer(buf.buffer));
function toBuffer(ab) {
var buffer = new Buffer(ab.byteLength);
var view = new Uint8Array(ab);
for (var i = 0; i < buffer.length; ++i) {
buffer[i] = view[i];
}
], [
{
foo: 'bar'
}
]);
return buffer;
}
{
"name": "dbf",
"version": "0.0.2",
"version": "0.1.0",
"description": "generate dbf files",

@@ -14,3 +14,4 @@ "main": "index.js",

"scripts": {
"test": "mocha -R spec"
"test": "mocha -R spec",
"make": "browserify -s dbf ./ > dbf.js"
},

@@ -17,0 +18,0 @@ "repository": {

# dbf
based on https://code.google.com/p/js2shapefile/ but aiming for a full rewrite.
Write [dBase files](https://en.wikipedia.org/wiki/DBase) in pure JavaScript,
in node.js or browsers. Requires [ArrayBuffer](https://developer.mozilla.org/en-US/docs/Web/API/ArrayBuffer)
and [DataView](https://developer.mozilla.org/en-US/docs/Web/API/DataView)
support.
## usage
npm install dbf
npm test
```
npm install dbf
```
### example
Or just in a browser:
https://raw.github.com/mapbox/dbf/master/dbf.js
## example
in node:
```js
var dbf = require('dbf');
var dbf = require('../'),
fs = require('fs');
dbf.writer([{
type: 'C',
name: 'foo'
}], [{
foo: 'bar'
}]);
var buf = dbf.structure([
{foo:'bar',noo:10},
{foo:'louie'}
]);
fs.writeFileSync('foo.dbf', toBuffer(buf.buffer));
function toBuffer(ab) {
var buffer = new Buffer(ab.byteLength);
var view = new Uint8Array(ab);
for (var i = 0; i < buffer.length; ++i) {
buffer[i] = view[i];
}
return buffer;
}
```
### specs
## API
### `dbf.structure(array)`
Given an array of objects with string or number attributes, return
a DataView object referencing an ArrayBuffer that contains a full DBF
file structure.
## Specifications
* http://www.clicketyclick.dk/databases/xbase/format/dbf.html#DBF_STRUCT
* http://www.quantdec.com/SYSEN597/GTKAV/section4/chapter_15a.htm
* http://ulisse.elettra.trieste.it/services/doc/dbase/DBFstruct.htm

@@ -9,7 +9,7 @@ module.exports.lpad = function lpad(str, len, char) {

module.exports.writeField = function writeField(view, fieldLength, numAsString, offset) {
module.exports.writeField = function writeField(view, fieldLength, str, offset) {
for (var i = 0; i < fieldLength; i++) {
view.setUint8(offset, numAsString.charCodeAt(i)); offset++;
view.setUint8(offset, str.charCodeAt(i)); offset++;
}
return offset;
};

Sorry, the diff of this file is not supported yet

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc