คำถามติดแท็ก io

ในการคำนวณอินพุต / เอาท์พุตหรือ I / O หมายถึงการสื่อสารระหว่างระบบประมวลผลข้อมูล (เช่นคอมพิวเตอร์) และโลกภายนอกอาจเป็นมนุษย์หรือระบบประมวลผลข้อมูลอื่น

30
ฉันจะอ่าน / แปลง InputStream เป็น String ใน Java ได้อย่างไร
หากคุณมีjava.io.InputStreamวัตถุคุณควรประมวลผลวัตถุนั้นและสร้างStringอย่างไร สมมติว่าฉันInputStreamมีข้อความที่มีข้อมูลตัวอักษรและฉันต้องการแปลงเป็น a Stringดังนั้นตัวอย่างเช่นฉันสามารถเขียนมันลงในไฟล์บันทึกได้ วิธีที่ง่ายที่สุดในการใช้InputStreamและแปลงเป็น a Stringคืออะไร? public String convertStreamToString(InputStream is) { // ??? }
4063 java  string  io  stream  inputstream 

30
ฉันจะสร้างสตริง Java จากเนื้อหาของไฟล์ได้อย่างไร
ฉันใช้สำนวนข้างล่างมาระยะหนึ่งแล้ว และดูเหมือนจะเป็นเว็บไซต์ที่มีการแพร่กระจายกว้างที่สุดอย่างน้อยก็ในเว็บไซต์ที่ฉันเคยเข้าชม มีวิธีที่ดีกว่า / แตกต่างในการอ่านไฟล์ในสตริงใน Java หรือไม่? private String readFile(String file) throws IOException { BufferedReader reader = new BufferedReader(new FileReader (file)); String line = null; StringBuilder stringBuilder = new StringBuilder(); String ls = System.getProperty("line.separator"); try { while((line = reader.readLine()) != null) { stringBuilder.append(line); stringBuilder.append(ls); } return stringBuilder.toString(); } finally { …
1513 java  string  file  file-io  io 

12
วนเนื้อหาของไฟล์ใน Bash
ฉันจะวนซ้ำแต่ละบรรทัดของไฟล์ข้อความด้วยBash ได้อย่างไร ด้วยสคริปต์นี้: echo "Start!" for p in (peptides.txt) do echo "${p}" done ฉันได้รับผลลัพธ์นี้บนหน้าจอ: Start! ./runPep.sh: line 3: syntax error near unexpected token `(' ./runPep.sh: line 3: `for p in (peptides.txt)' (ต่อมาฉันต้องการทำสิ่งที่ซับซ้อน$pมากกว่าเพียงแค่เอาท์พุทไปยังหน้าจอ) ตัวแปรสภาพแวดล้อมSHELLคือ (จาก env): SHELL=/bin/bash /bin/bash --version เอาท์พุท: GNU bash, version 3.1.17(1)-release (x86_64-suse-linux-gnu) Copyright (C) 2005 Free Software Foundation, …
1387 linux  bash  loops  unix  io 

10
วิธีเปลี่ยนเส้นทางเอาต์พุตไปยังไฟล์และ stdout
Наэтотвопросестьответына กองมากเกินнарусском : Каксохранитьвыводлюбойкомандывфайли сразужеувидетьеговтерминале ? ใน bash การโทรfooจะแสดงเอาต์พุตใด ๆ จากคำสั่งนั้นบน stdout การโทรfoo > outputจะเปลี่ยนเส้นทางเอาต์พุตใด ๆ จากคำสั่งนั้นไปยังไฟล์ที่ระบุ (ในกรณีนี้คือ 'เอาต์พุต') มีวิธีการเปลี่ยนเส้นทางการส่งออกไปยังไฟล์และมันจะแสดงบน stdout หรือไม่?
988 linux  bash  file-io  io  stdout 


23
ฉันจะตรวจสอบว่าไฟล์มีอยู่ใน Java ได้อย่างไร?
ฉันจะตรวจสอบว่ามีไฟล์อยู่ก่อนเปิดเพื่ออ่านในJava (เทียบเท่าของPerl -e $filenameหรือไม่) คำถามที่คล้ายกันเพียงข้อเดียวเกี่ยวกับ SOเกี่ยวข้องกับการเขียนไฟล์และได้รับคำตอบดังนั้นการใช้FileWriterซึ่งเห็นได้ชัดว่าไม่สามารถใช้ได้ที่นี่ ถ้าเป็นไปได้ฉันต้องการโทรAPIจริงกลับจริงหรือเท็จซึ่งตรงข้ามกับ "Call API เพื่อเปิดไฟล์และจับเมื่อมันโยนข้อยกเว้นที่คุณตรวจสอบ 'ไม่มีไฟล์' ในข้อความ" แต่ฉันสามารถอยู่กับ หลัง.
842 java  file-io  io  file-exists 

19
เครื่องสแกนกำลังข้าม nextLine () หลังจากใช้ next () หรือ nextFoo ()?
ฉันใช้ScannerวิธีการnextInt()และnextLine()การอ่านอินพุต ดูเหมือนว่านี้: System.out.println("Enter numerical value"); int option; option = input.nextInt(); // Read numerical value from input System.out.println("Enter 1st string"); String string1 = input.nextLine(); // Read 1st string (this is skipped) System.out.println("Enter 2nd string"); String string2 = input.nextLine(); // Read 2nd string (this appears right after reading numerical value) ปัญหาคือหลังจากป้อนค่าตัวเลขตัวแรกinput.nextLine()จะถูกข้ามและตัวที่สองinput.nextLine()จะถูกดำเนินการเพื่อให้ผลลัพธ์ของฉันเป็นดังนี้: Enter …


30
วิธีอ่านไฟล์ทั้งหมดในโฟลเดอร์จาก Java
ต้องการปรับปรุงโพสต์นี้หรือไม่? ให้คำตอบโดยละเอียดสำหรับคำถามนี้รวมถึงการอ้างอิงและคำอธิบายว่าทำไมคำตอบของคุณถึงถูกต้อง คำตอบที่ไม่มีรายละเอียดเพียงพออาจแก้ไขหรือลบออกได้ จะอ่านไฟล์ทั้งหมดในโฟลเดอร์ผ่าน Java ได้อย่างไร
669 java  file  io  directory 

5
รับ OutputStream เป็นสตริง
วิธีที่ดีที่สุดในการไพพ์เอาต์พุตจาก java.io.OutputStream ไปยัง String ใน Java คืออะไร พูดว่าฉันมีวิธีการ: writeToStream(Object o, OutputStream out) ซึ่งเขียนข้อมูลบางอย่างจากวัตถุไปยังกระแสที่กำหนด อย่างไรก็ตามฉันต้องการเอาท์พุทนี้เข้าไปใน String ได้อย่างง่ายดายที่สุด ฉันกำลังพิจารณาเขียนชั้นเรียนเช่นนี้ (ยังไม่ทดลอง): class StringOutputStream extends OutputStream { StringBuilder mBuf; public void write(int byte) throws IOException { mBuf.append((char) byte); } public String getString() { return mBuf.toString(); } } แต่จะมีวิธีที่ดีกว่า ฉันต้องการทดสอบเท่านั้น!
580 java  string  io  stream 

6
คำนวณเวลาดำเนินการของวิธีการ
สำเนาซ้ำที่เป็นไปได้: ฉันจะวัดระยะเวลาที่ฟังก์ชันใช้งานได้อย่างไร ฉันมีวิธีการจับเวลา I / O ซึ่งคัดลอกข้อมูลจากที่ตั้งไปยังที่อื่น เป็นวิธีที่ดีที่สุดและจริงมากที่สุดในการคำนวณเวลาดำเนินการ? Thread? Timer? Stopwatch? ทางออกอื่น ๆ ? ฉันต้องการหนึ่งที่แน่นอนที่สุดและสั้นที่สุดเท่าที่จะทำได้
533 c#  .net  timer  io  stopwatch 

30
การไม่บล็อกการอ่านบน subprocess.PIPE ใน python
ฉันใช้โมดูลย่อยเพื่อเริ่มกระบวนการย่อยและเชื่อมต่อกับเอาต์พุตสตรีม (stdout) ฉันต้องการที่จะรันการอ่านที่ไม่บล็อกบน stdout มีวิธีที่จะทำให้. non-block หรือตรวจสอบว่ามีข้อมูลในสตรีมก่อนที่ฉันจะเรียกใช้.readlineหรือไม่ ฉันต้องการให้อุปกรณ์พกพาหรืออย่างน้อยต้องทำงานภายใต้ Windows และ Linux นี่คือวิธีที่ฉันทำตอนนี้ (มันปิดกั้น.readlineหากไม่มีข้อมูล): p = subprocess.Popen('myprogram.exe', stdout = subprocess.PIPE) output_str = p.stdout.readline()

29
ฉันจะรับนามสกุลไฟล์ของไฟล์ใน Java ได้อย่างไร?
เพื่อความชัดเจนฉันไม่ได้มองหาประเภท MIME สมมติว่าฉันมีอินพุตต่อไปนี้: /path/to/file/foo.txt ฉันต้องการแยกวิธีการป้อนข้อมูลนี้โดยเฉพาะ.txtสำหรับส่วนขยาย มีวิธีใดบ้างที่จะทำสิ่งนี้ใน Java? ฉันต้องการหลีกเลี่ยงการเขียนโปรแกรมแยกวิเคราะห์ของฉันเอง
484 java  file  io 

8
StringIO ใน Python3
ฉันใช้ Python 3.2.1 และฉันไม่สามารถนำเข้าStringIOโมดูล ผมใช้ io.StringIOและการทำงาน แต่ฉันไม่สามารถใช้กับnumpy's genfromtxtเช่นนี้ x="1 3\n 4.5 8" numpy.genfromtxt(io.StringIO(x)) ฉันได้รับข้อผิดพลาดต่อไปนี้: TypeError: Can't convert 'bytes' object to str implicitly และเมื่อฉันเขียนimport StringIOมันบอกว่า ImportError: No module named 'StringIO'
474 python  python-3.x  io 

23
วิธีง่ายๆในการเขียนเนื้อหาของ Java InputStream ไปยัง OutputStream
ฉันประหลาดใจที่พบว่าวันนี้ฉันไม่สามารถติดตามวิธีง่ายๆในการเขียนเนื้อหาของ a InputStreamไปยังOutputStreamใน Java เห็นได้ชัดว่ารหัสบัฟเฟอร์ไบต์ไม่ยากที่จะเขียน แต่ฉันสงสัยว่าฉันเพิ่งหายไปบางสิ่งบางอย่างที่จะทำให้ชีวิตของฉันง่ายขึ้น (และรหัสชัดเจนขึ้น) ดังนั้นเมื่อได้รับInputStream inและOutputStream outมีวิธีที่ง่ายกว่าในการเขียนต่อไปนี้หรือไม่? byte[] buffer = new byte[1024]; int len = in.read(buffer); while (len != -1) { out.write(buffer, 0, len); len = in.read(buffer); }
445 java  io  stream 

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.