TextEdit - Save .TXT With ANSI Encoding?
Hi,
In Windows XP Notepad, the default type of Encoding for .txt files is ANSI. Can this be done in TextEdit, so that simple text files (not Rich Text) saved in either app are fully compatible with the other?
So which OS is to blame? The Mac seems to be inserting weird paragraph returns that Windows doesn't understand, no matter what type of file encoding you use (UTF-8, Western Windows Latin 1, Western DOS Latin 1).
My understanding is that TextEdit uses standard Unix type line endings, called LF (line feed, hex 0A). Windows stuff uses a different convention, CR + LF (0D 0A). If a Windows app will not display text just because it encounters something other than CR + LF, I'd say it probably has a bug of some sort.
Is there a solution to this probem?
I don't think the line endings of TextEdit can be changed. Some other apps like Text Wrangler offer you a choice in their preferences.
Similar Messages
-
CSV fomrat with ANSI encoding file Crystal report
Hi All
We are using Business Object XI Release 2 web intelligence/Crystal report to configrure the report send to client
if I configure Character-seperated values format for crystal report template it generate the CSV file in UTF-8 encoding
how to generate character-seperated values format file for crystal report in ANSI encoding
Thanks
Rajesh PandeyHi
Bryan Thanks for your help. i am thinking to create an independent Java or C++ program to change the file from UTF-8 to ANSI char set
and shchedule to run to change csv file char set before mail it to client by BO
In this design how we can get the event by BO that file has been created and yet to send by email or FTP
I can see two type of event
Event to Wait for
Event to Trigger on complition
if i create two event
CSV_UTF8_CREATED - will be fire by BO once BO create file and yet to send email
CSV_ANSI_CREATED - will be fire by program once it convert from UTF_8 to ANSI
please guide if its possible to create such event and fire by BO on file creation and yet to send to destination
Thanks
Rajesh Pandey -
CSV format with ANSI encoding file Crystal report
Hi All
We are using Business Object XI Release 2 web intelligence/Crystal report to configrure the report send to client
if I configure Character-seperated values format for crystal report template it generate the CSV file in UTF-8 encoding
how to generate character-seperated values format file for crystal report in ANSI encoding
Thanks
Rajesh PandeyHi
Bryan Thanks for your help. i am thinking to create an independent Java or C++ program to change the file from UTF-8 to ANSI char set
and shchedule to run to change csv file char set before mail it to client by BO
In this design how we can get the event by BO that file has been created and yet to send by email or FTP
I can see two type of event
Event to Wait for
Event to Trigger on complition
if i create two event
CSV_UTF8_CREATED - will be fire by BO once BO create file and yet to send email
CSV_ANSI_CREATED - will be fire by program once it convert from UTF_8 to ANSI
please guide if its possible to create such event and fire by BO on file creation and yet to send to destination
Thanks
Rajesh Pandey -
Outbound interface - Generating files with ANSI encoding.
Hi All,
I am able to generate output files with txt extension. But it is generating in UTF-8 encoding files, myself when i open the files in notepad, i find UTF-8 and when opened in wordpad i find ANSI. My user wants it in ANSI in any case.
One more thing my client's language is Spanish, where there will be special characters like Ñ, so if the file is in ANSI, will there be a problem for this characters.
Please help.So which OS is to blame? The Mac seems to be inserting weird paragraph returns that Windows doesn't understand, no matter what type of file encoding you use (UTF-8, Western Windows Latin 1, Western DOS Latin 1).
My understanding is that TextEdit uses standard Unix type line endings, called LF (line feed, hex 0A). Windows stuff uses a different convention, CR + LF (0D 0A). If a Windows app will not display text just because it encounters something other than CR + LF, I'd say it probably has a bug of some sort.
Is there a solution to this probem?
I don't think the line endings of TextEdit can be changed. Some other apps like Text Wrangler offer you a choice in their preferences. -
I'm trying to save the contents of a field member (all short
sentences each
on a separate line) into a txt-file. The file is created OK,
but somehow,
all these short sentences are placed one after the other;
they're no longer
on a separate line.
Saving the text as an RTF solves the issue, but I really want
to save it as
a TXT... Is there a way to do this? (using D8.5)Hi,
it probably depends on the OS (or which text editor) you
check the file in.
Director uses only the char(13) (Carriage Return of CR) as a
new line
char. Dos/windows refers the char(13) char(10) (Carriage
Return Line
Feed or CRLF) combo.
http://director-online.com/dougwiki/index.php/RETURN)
So, either use a different text editor or convert all
char(13) to
char(13) char(10). cr => crlf
See:
http://www.mediamacros.com/item/item-950637747/
(amongst others)
for a how to.
Manno
Somnifer wrote:
> I'm trying to save the contents of a field member (all
short sentences each
> on a separate line) into a txt-file. The file is created
OK, but somehow,
> all these short sentences are placed one after the
other; they're no longer
> on a separate line.
>
> Saving the text as an RTF solves the issue, but I really
want to save it as
> a TXT... Is there a way to do this? (using D8.5)
>
>
Manno Bult
[email protected] -
CONVERSION FROM ANSI ENCODED FILE TO UTF-8 ENCODED FILE
Hi All,
I have some issues in conversion of ANSI encoded file to utf encoded file. let me tell you in detail
I have installed the Language Support for Thai Language on My Operating System.
now, when I open my notepad and add thai character on the file and save it as ansi encoding. it saves it perfectly and also I able to see it on opening the file again.
This file need to be read by my application , store in database and should display thai character on jsp after fetching the data from database. Currently it is showing junk character on jsp reason being that my database (UTF8 compliant database) has junk data . it has junk data because my application is not able to read it correctly from the file.
If I save the file with encoding as UTF 8 it works fine. but my business requirement is such that the file is system generated and by default it is encoded in ANSI format. so I need to do the conversion of encoding from ANSI to UTF8 . so Any of you can guide me on the same how to do this conversion ?
Regards
Gaurav NigamGuessing the encoding of a text file by examining its contents is tricky at best, and should only be done as a last resort. If the file is auto-generated, I would first try reading it using the system default encoding. That's what you're doing whenever you read a file with a FileReader. If that doesn't work, try using an InputStreamReader and specifying a Thai encoding like TIS-620 or cp838 (I don't really know anything about Thai encodings; I just picked those out of a quick Google search). Once you've read the file correctly, you can write the text to a new file using an OutputStreamWriter and specifying UTF-8 as the encoding. It shouldn't really be necessary to transcode files like this, but without knowing a lot more about your situation, that's all I can suggest.
As for native2ascii, it isn't for encoding conversions. All it does is replace each non-ASCII character with its six-character Unicode escape, so "voilá" becomes "voil\u00e1". In other words, it avoids the problem of character encodings by converting the file's contents to a form that can be stored as ASCII. It's mainly used for converting property or resource files to a form that can be read by the Properties and ResourceBundle classes. -
TextEdit save as .txt?
Maybe I'm missing something, but is there any way to have TextEdit save a document as a .txt by default? It's rather annoying to have to rename the extension from .rtf to .txt every time.
TextEdit->Preferences->New Document->select Plain Text. Works like that in SL and, AFAIK, in Lion.
-
Revision: 7661
Author: [email protected]
Date: 2009-06-08 17:50:12 -0700 (Mon, 08 Jun 2009)
Log Message:
Change from charset=iso-8859-1" to charset=utf-8" and save file with utf-8 encoding.
QA Notes:
Doc Notes:
Bugs: SDK-21636
Reviewers: Corey
Ticket Links:
http://bugs.adobe.com/jira/browse/iso-8859
http://bugs.adobe.com/jira/browse/utf-8
http://bugs.adobe.com/jira/browse/utf-8
http://bugs.adobe.com/jira/browse/SDK-21636
Modified Paths:
flex/sdk/trunk/templates/swfobject/index.template.htmlsame problem here with wl8.1
have you sold it and if yes, how?
thanks -
I probably lost some textedit files "untitled" with upgarde to mountain lion. where does lion / mountain lion saves those files?
Lane,
That latest raw update also shows supported devices. The EOS-1Ds is still shown as supported by Mountain Lion in the knowledge base article that accompanies it. Bump!
I wonder if using Disk Utility and verify/fix permissions may restore your RAW capability.
Don't have Aperture or Lightroom.
I installed the recent raw updates into 10.8.2. The DB5W2360.TIF file has a generic Preview icon. Graphic Converter 8.3.1 opens .cr2 files, and it opened this TIF file nicely as well. GC is willing to modify white balance with a condition that it cannot be done in place, and must be exported to a different format.
Not much help, I know. -
How to save a UTF-8 encoded text file ?
hi People
I have a little script which reads the source text from a layer and saves it to a .txt file. This is on a Mac and all was good until recently when I tried opening the .txt file on a PC in Notepad and found my ˚ degree symbols all whack.
Resaving the .txt file in TextEdit as Unicode (UTF-8) encoding solved the problem, now opens fine in Notepad.
But ideally I'd like the script to output the .txt as UTF-8 in the first place. It's currently Western (Mac OS Roman). I've tryed adding in myfile.encoding = "UTF8" but the resulting file is still Western (and the special charaters have wigged out again)
any help greatly appreciated../daniel
var theComp = app.project.activeItem;
var dataRO = theComp.layer("dataRO").sourceText;
// prompt user to save file
var theFile = new File ("~/Desktop/"+ theComp.name + "_output.txt");
theFile = theFile.saveDlg("Save an ASCII export file.");
if (theFile != null) { // check user didn't cancel dialog
theFile.lineFeed = "windows";
//theFile.encoding = "UTF8";
theFile.open("w","TEXT","????");
theFile.writeln("move details:");
theFile.writeln(dataRO.value.toString());
theFile.close();Hi,
Got it, it seems, the utf-8 standard use 2-bytes (and more) encoding on accents and special characters.
I found some info there with some code http://ivoronline.com/Coding/Theory/Tutorials/Encoding%20-%20Text%20-%20UTF%208.php
However there was some error so I fixed it. (However for 3 and 4 bytes characters i didnt test it. So maybe you'll have to change back the 0xbf to 0x3f or something else.)
So here is the code.
Header 1
function convertCharToUTF(character){
var utfBytes = "";
c = character.charCodeAt(0)
if (c < 0x80) {
utfBytes = String.fromCharCode (c);
else if (c < 0x800) {
utfBytes = String.fromCharCode (0xC0 | c>>6);
utfBytes += String.fromCharCode (0x80 | c & 0xbF);
else if (c < 0x10000) {
utfBytes = String.fromCharCode (0xE0 | c>>12);
utfBytes += String.fromCharCode (0x80 | c>>6 & 0xbF);
utfBytes += String.fromCharCode (0x80 | c & 0xbF);
else if (c < 0x200000) {
utfBytes += String.fromCharCode (0xF0 | c>>18);
utfBytes += String.fromCharCode (0x80 | c>>12 & 0xbF);
utfBytes += String.fromCharCode (0x80 | c>>6 & 0xbF);
utfBytes =+ String.fromCharCode (0x80 | c & 0xbF);
return utfBytes
function convertStringToUTF(stringToConvert){
var utfString = ""
for (var i = 0 ; i < stringToConvert.length; i++){
utfString = utfString + convertCharToUTF(stringToConvert.charAt (i))
return utfString;
var theFile= new File("~/Desktop/_output.txt");
theFile.open("w", "TEXT");
theFile.encoding = "BINARY"
theFile.linefeed = "Unix"
theFile.write("");//or theFile.write(String.fromCharCode (0xEF) + String.fromCharCode (0xEB) + String.fromCharCode (0xBF)
theFile.write(convertStringToUTF("Your stuff éàçËôù"));
theFile.close(); -
Output file in ANSI Encoding.
Hi,
I have created a serch and replace program which works fine with normal text files.
But it doesn't work with oracle database dump files because I think they are ANSI encoded.
Can someone body please point me in the right direction.
My program;
Gets source file
Gets find and replace strings.
Makes a copy of the source file saves all the replaced matched sequences in the new file.Your problem is most likely an encoding problem.
Unfortunately there is usually no automated way to solve this unless you have a way to know the encoding of all your input files.
Read [this excellent introduction into Unicode|http://www.joelonsoftware.com/articles/Unicode.html] for an explanation. -
Hi
I have been compiling some asp files for a forum and there
was an issue with
displaying the UK £ Pound sign and the resolution was to
save the file in
the ANSI encoding and not UTF-8 encoding.
How can we preset the preferences so that the file format is
in ANSI
encoding as a default?
thanks andyANSI characters not present in ISO-8859-1
http://www.alanwood.net/demos/charsetdiffs.html#a
http://www.alanwood.net/demos/ansi.html
This link may help...
https://www.sdn.sap.com/irj/sdn?rid=/webcontent/uuid/40943d04-0b01-0010-fbae-c023e996d1b6 [original link is broken] -
I can't open or save file with Java Web Start
Hi,
i can't open or save file with Java Web Start:
import java.io.*;
import java.util.*;
public class MetaDataFileCreator {
public String fileNameSpace = null;
public String fileName = null;
protected Properties file = null;
public MetaDataFileCreator(String fileNameSpace, String fileName) {
this.fileNameSpace = fileNameSpace;
this.fileName = fileName;
public void createMetaDataFile() {
try {
System.out.println("file METADATA");
ClassLoader cl = this.getClass().getClassLoader();
String nameFileMetaData = fileNameSpace + fileName + ".txt";
FileOutputStream fileOS = new FileOutputStream(cl.getResource(nameFileMetaData).getFile());
file = new Properties();
file.setProperty("aaaaa", "aaaa");
file.store(fileOS, "");
fileOS.close();
} catch (Exception e) {
System.out.println("Error writing metadata-file: " + e);
System.exit(1);
e.printStackTrace();
I have try also to open a file like this:
ClassLoader cl = this.getClass().getClassLoader();
file.load(cl.getResourceAsStream(nameFile));
also like this:
try {
fos = (FileOpenService)ServiceManager.lookup("javax.jnlp.FileOpenService");
fss = (FileSaveService)ServiceManager.lookup("javax.jnlp.FileSaveService");
} catch (UnavailableServiceException e) {
fss = null;
fos = null;
System.out.println("Error with JNLP");
System.exit(1);
if (fss != null && fos != null) {
try {
// get a FileContents object to work with from the
// FileOpenService
FileContents fc = fos.openFileDialog(null, null);
//FileContents newfc2 = fss.saveAsFileDialog(null, null, fc);
// get the OutputStream and write the file back out
if (fc.canWrite()) {
// don't append
os = fc.getOutputStream(false);
} catch (Exception e) {
e.printStackTrace();
also like this:
File f = new File((System.getProperty("user.home")+"x.txt").toString());
FileOutputStream fileX = new FileOutputStream(f);
OutputX = new PrintWriter(new BufferedWriter(new OutputStreamWriter(fileX, "UTF8")));
OutputX.println(....
but it doesn't work with Java Web Start.
Can someone help me?
How can I open or save file?
thank you.
SebastianoDid you specify <all-permissions/> in your JNLP file? Did you sign your code? What error are you getting?
-
Issues with Japanese encoding using Mail
Since recently (I would say since I updated to 10.6), I have an issue with Japanese-encoded (ISO 2022-JP) mails on my English MacOS.
I have no problem to read, edit and write answers to any mails.
However with some ISO JP-2022-JP encoded messages (sent with Thunderbird 2.0.0.23 (Windows/20090812) btw) I have the following misbehaviour:
- if I send the message and let the encoding to "automatic", Mail sends the mail in UTF-8, which I do not want since most of Japanese computer do not understand UTF-8 by default (and the receiver gets panicked: "I can not read your mail T_T !")
- if I set the encoding to "ISO JP-2022-JP", I can not send nor save the message (see [1] at the end of the post). One should note that the error message when saving is really misleading (and yes my hard-drive has a lot of space left) and it should be fixed by Apple.
- if I dig a bit deeper, I can in effect find some characters in the original message which prevent Mail to send my mail. It however does not make any sense since:
- those char were in the original message properly encoded in ISO JP-2022-JP
- those char are always very common ones
The only solution I have found so far is to delete the original message in my mail, which is very frustrating...
A sample of such mail can be found at (I removed personal info. and the mail is about a drinking party):
- http://files.me.com/trouve.antoine/73w3w9
Help would be very appreciated.
Thank you very much.
Antoine
[1] I get the following error messages:
-> try to save:
*This message can’t be saved to the Drafts mailbox.*
The message contains one or more attachments that
are too large to be saved in the Drafts mailbox. Try
deleting some attachments.
->try to send
*Invalid Text Encoding*
Some characters in your message could not be
converted to the “Japanese (ISO 2022-JP)” text
encoding. Choose a different encoding from the
“Text Encoding” menu.You can find out about the different versions here, for example:
http://en.wikipedia.org/wiki/ISO/IEC_2022
Thank you. I feel a bit stupid for not having looked in Wikipedia at first...
I sometime wonder how could such basic problem like charset not being solved after more than 40 years of computer science...
Here is a note that addresses that problem, but I don't think it works with 10.6. Might be worth a > try:
http://discussions.apple.com/thread.jspa?threadID=121808&tstart=60
Thank for the link.
It seems to still work: new japanese mails are now sent in "ISO 2022-JP-2".
However, for messages with the header explicitly specifying "ISO 2022-JP" (which should be "ISO 2022-JP-2" on my mac) it has no influence.
The only ways I see to solve this issue would be:
i) to force "ISO 2022-JP-2" for all mails (a bit too extreme)
ii) to force the use of "ISO 2022-JP-2" instead of "ISO 2022-JP", but I do not think such precise configuration is possible
This mess appears to be due to Thunderbird which seems to mix "ISO 2022-JP-2" and "ISO 2022-JP", but I do not have any working Thunderbird to test now... -
Cannot upload with Transfer-Encoding: chunked
Hi,
I am unable to upload a file with Transfer-Encoding: chunked. I am using Jakarta Commons HttpClient:
PutMethod method=new PutMethod("http://myhost.com/test/uploaded.txt");
method.setContentChunked(true);
method.setRequestEntity(new StringRequestEntity("uploaded", "text/plain", "iso-8859-1"));
client.executeMethod(method);I get the following log output:
6 mars 2006 12:20:42 org.apache.commons.httpclient.Wire wire
FIN: >> "PUT /test/uploaded.txt HTTP/1.1[\r][\n]"
6 mars 2006 12:20:42 org.apache.commons.httpclient.Wire wire
FIN: >> "Authorization: Basic myauth[\r][\n]"
6 mars 2006 12:20:42 org.apache.commons.httpclient.Wire wire
FIN: >> "User-Agent: Jakarta Commons-HttpClient/3.0[\r][\n]"
6 mars 2006 12:20:42 org.apache.commons.httpclient.Wire wire
FIN: >> "Host: myhost.com[\r][\n]"
6 mars 2006 12:20:42 org.apache.commons.httpclient.Wire wire
FIN: >> "Transfer-Encoding: chunked[\r][\n]"
6 mars 2006 12:20:42 org.apache.commons.httpclient.Wire wire
FIN: >> "Content-Type: text/plain; charset=iso-8859-1[\r][\n]"
6 mars 2006 12:20:42 org.apache.commons.httpclient.Wire wire
FIN: >> "[\r][\n]"
6 mars 2006 12:20:42 org.apache.commons.httpclient.Wire wire
FIN: >> "8[\r][\n]"
6 mars 2006 12:20:42 org.apache.commons.httpclient.Wire wire
FIN: >> "uploaded"
6 mars 2006 12:20:42 org.apache.commons.httpclient.Wire wire
FIN: >> "[\r][\n]"
6 mars 2006 12:20:42 org.apache.commons.httpclient.Wire wire
FIN: >> "0"
6 mars 2006 12:20:42 org.apache.commons.httpclient.Wire wire
FIN: >> "[\r][\n]"
6 mars 2006 12:20:42 org.apache.commons.httpclient.Wire wire
FIN: >> "[\r][\n]"
6 mars 2006 12:20:42 org.apache.commons.httpclient.Wire wire
FIN: << "HTTP/1.1 201 Created[\r][\n]"
6 mars 2006 12:20:42 org.apache.commons.httpclient.Wire wire
FIN: << "Server: Sun-ONE-Web-Server/6.1[\r][\n]"
6 mars 2006 12:20:42 org.apache.commons.httpclient.Wire wire
FIN: << "Date: Mon, 06 Mar 2006 11:26:24 GMT[\r][\n]"
6 mars 2006 12:20:42 org.apache.commons.httpclient.Wire wire
FIN: << "Content-type: text/html[\r][\n]"
6 mars 2006 12:20:42 org.apache.commons.httpclient.Wire wire
FIN: << "Transfer-encoding: chunked[\r][\n]"
6 mars 2006 12:20:42 org.apache.commons.httpclient.Wire wire
FIN: << "0"
6 mars 2006 12:20:42 org.apache.commons.httpclient.Wire wire
FIN: << "0"
6 mars 2006 12:20:42 org.apache.commons.httpclient.Wire wire
FIN: << "b"
6 mars 2006 12:20:42 org.apache.commons.httpclient.Wire wire
FIN: << "d"
6 mars 2006 12:20:42 org.apache.commons.httpclient.Wire wire
FIN: << "[\r]"
6 mars 2006 12:20:42 org.apache.commons.httpclient.Wire wire
FIN: << "[\n]"
6 mars 2006 12:20:42 org.apache.commons.httpclient.Wire wire
FIN: << "<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">[\n]"
6 mars 2006 12:20:42 org.apache.commons.httpclient.Wire wire
FIN: << "<html><head>[\n]"
6 mars 2006 12:20:42 org.apache.commons.httpclient.Wire wire
FIN: << "<title>201</title>[\n]"
6 mars 2006 12:20:42 org.apache.commons.httpclient.Wire wire
FIN: << "</head><body>[\n]"
6 mars 2006 12:20:42 org.apache.commons.httpclient.Wire wire
FIN: << "<h1>Created</h1>[\n]"
6 mars 2006 12:20:42 org.apache.commons.httpclient.Wire wire
FIN: << "<p>Resource /test/uploaded.txt has been created.</p>[\n]"
6 mars 2006 12:20:42 org.apache.commons.httpclient.Wire wire
FIN: << "<hr />[\n]"
6 mars 2006 12:20:42 org.apache.commons.httpclient.Wire wire
FIN: << "</body></html>[\n]"
6 mars 2006 12:20:42 org.apache.commons.httpclient.Wire wire
FIN: << "[\r]"
6 mars 2006 12:20:42 org.apache.commons.httpclient.Wire wire
FIN: << "[\n]"
6 mars 2006 12:20:42 org.apache.commons.httpclient.Wire wire
FIN: << "0"
6 mars 2006 12:20:42 org.apache.commons.httpclient.Wire wire
FIN: << "[\r]"
6 mars 2006 12:20:42 org.apache.commons.httpclient.Wire wire
FIN: << "[\n]"
6 mars 2006 12:20:42 org.apache.commons.httpclient.Wire wire
FIN: << "[\r]"
6 mars 2006 12:20:42 org.apache.commons.httpclient.Wire wire
FIN: << "[\n]"
all looks fine, but the uploaded.txt is empty.
Note without Transfer-Encoding: chunked, all is OK.
Any help would be greatly appreciated.
Regards,
Laurent.Note I get a HTTP 204 no content, once the file is already created:
6 mars 2006 12:43:08 org.apache.commons.httpclient.Wire wire
FIN: << "HTTP/1.1 204 No Content[\r][\n]"
6 mars 2006 12:43:08 org.apache.commons.httpclient.Wire wire
FIN: << "Server: Sun-ONE-Web-Server/6.1[\r][\n]"
6 mars 2006 12:43:08 org.apache.commons.httpclient.Wire wire
FIN: << "Date: Mon, 06 Mar 2006 11:48:50 GMT[\r][\n]"
Maybe you are looking for
-
How can i get my i5 unlocked brought from Dubai(middle east), Now i want to use it in Pakistan(Asia). <Perosnal information removed by Host>
-
Resize a person in a composite photo
I am new to CS5 and I just cant figure out how to do this. I have removed the person from one photo and have her isolated on her own layer. I have all the other people on the background photo which I have made into another layer. The problem is that
-
What is the price for UK Creative Cloud?
This URL: https://creative.adobe.com/plans shows that the price for existing qualified customers is £22.23: Yet when I click "Sign Up", I get a price of £27.34: Also, you'll notice from the screenshots above that the regular annual subscription price
-
Stray jnlp files gets downloaded onto the desktop when using Safari on MAC.
We are using jdk 1.4 webstart and safari browser on a mac machine. Once the web start begins a jnlp file gets downloaded on to the desktop but does not get deleted. This happens each time the webstart begins thus the desktop is cluttered with stray .
-
Need help with java.nio.socket program.
Can someone please help me here? I am trying to create a class that listens on a socket for an incoming connection, but I am getting the following error on compile: SocketIn.java:48: incompatible types found : java.nio.channels.SocketChannel required