Skip to content

Commit 9dcf967

Browse files
author
Elliot Boschwitz
authored
Added utf-8 encoding for -i (#466)
* Added utf-8 encoding for -i * added test * fixed py2 issue * py2 friendly error * fixed py2 for windows * removed test
1 parent 0c3bcee commit 9dcf967

1 file changed

Lines changed: 10 additions & 4 deletions

File tree

mssqlcli/main.py

Lines changed: 10 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -2,11 +2,12 @@
22
from __future__ import print_function
33

44
import getpass
5+
import io
56
import os
67
import sys
78
from builtins import input
89
import click
9-
10+
import six
1011
from mssqlcli.config import config_location
1112
from mssqlcli.__init__ import __version__
1213
from mssqlcli.mssqlclioptionsparser import create_parser
@@ -58,9 +59,14 @@ def run_cli_with(options):
5859
if options.input_file:
5960
# get query text from input file
6061
try:
61-
with open(options.input_file, 'r') as f:
62-
text = f.read()
63-
except FileNotFoundError as e:
62+
if six.PY2:
63+
with io.open(options.input_file, 'r', encoding='utf-8') as f:
64+
# utf-8 encoding must be called again for windows
65+
text = f.read().encode('utf-8')
66+
else:
67+
with open(options.input_file, 'r', encoding='utf-8') as f:
68+
text = f.read()
69+
except OSError as e:
6470
click.secho(str(e), err=True, fg='red')
6571
sys.exit(1)
6672
mssqlcli.execute_query(text)

0 commit comments

Comments
 (0)