01/10/2018, 15:45

Có method nào tương tự như hàm getch() của C trong java không?

public void waitForCont()
        {
                out.printf("
Press C to Continue...
");
                boolean pressed = false;
                String entered = "";
                while(!pressed)
                {
                        entered=kb.next();
                        if((entered.equals("C"))||entered.equals("c"))
                            pressed=true;
                }
          }
Quân viết 17:47 ngày 01/10/2018

google với từ khóa “nhập xuất trong java” chỉ 0.1s có cả nghìn kết quả, vận động 1 chút đi bạn

Quân viết 17:53 ngày 01/10/2018

What!!!

Nguyễn Tấn Trung viết 18:00 ngày 01/10/2018

nếu như tìm được mình đã không lên đây đợi câu trả lời rồi

Quân viết 17:51 ngày 01/10/2018

Bạn tìm thế nào mà không được, full code sẵn để copy hay giải pháp, từ khóa là gì, bạn biết vì sao không ai trả lời không, vì nó quá cơ bản

Nguyễn Tấn Trung viết 18:01 ngày 01/10/2018

đúng hơn là không ai biết nhé

Nguyễn Tấn Trung viết 17:50 ngày 01/10/2018

tôi đã tìm hiểu và không có hàm getch() nào trong java. Giải pháp tôi có xem ở một số trang nước ngoài và kết quả không như mong đợi nên mới ngồi mòn ở đây xem thử có ai đã từng tìm hiểu vấn đề này chưa

Nguyễn Tấn Trung viết 17:58 ngày 01/10/2018

mà bạn có biết hàm getch() trong C nó chạy như thế nào không mà trả lời kiểu như nó dễ vậy mà cũng đi hỏi

anon45952904 viết 17:48 ngày 01/10/2018

tôi đã tìm hiểu và không có hàm getch() nào trong java. Giải pháp tôi có xem ở một số trang nước ngoài và kết quả không như mong đợi nên mới ngồi mòn ở đây xem thử có ai đã từng tìm hiểu vấn đề này chưa

getch() reads a single character directly from the keyboard, without echoing to the screen.
Đọc chức năng thôi cũng biết là nó thuộc io trong C => Vậy lần sang java.io.* InputStreamReader(System.in);

public static final InputStream in
The “standard” input stream. This stream is already open and ready to supply input data. Typically this stream corresponds to keyboard input or another input source specified by the host environment or user.

Cái này có hợp với bạn không ?

Còn 1 phát ăn ngay như getch() thì có vẻ như hãm hiếp OOP quá nhỉ.

Nguyễn Tấn Trung viết 17:55 ngày 01/10/2018

mình nhấn 1 phím bất kì rồi nó lưu vào bộ nhớ luôn mà không cần nhấn enter để nhập đó bạn. cái này nó chỉ lấy kí tự đầu thôi

Aster-Dynos viết 17:47 ngày 01/10/2018

1-2 sec google xẻ cho bạn thấy:

  • https://stackoverflow.com/questions/17759142/is-there-any-equivalent-of-getch-from-c-in-java

  • https://www.quora.com/Is-there-any-function-in-Java-like-getch-in-C++

Short answer: Không có

Long answer: bạn phải tự viết function này cho Java hay xài code của người khác viết.

Nguyễn Tấn Trung viết 17:59 ngày 01/10/2018

code người khác viết không hoàn thiện bạn ơi. Mình thì không đủ trình viết code này rồi

Hung viết 18:01 ngày 01/10/2018

Không ai đủ trình độ viết 1 phát ra code xịn cả.
Khi code viết ra, refactor nhiều lần mới ra đoạn code cuối cùng.

anon45952904 viết 18:02 ngày 01/10/2018
package console;

import java.awt.AWTException;
import java.awt.Robot;
import java.awt.event.KeyEvent;
import java.io.IOException;
import java.io.InputStreamReader;



/**
 *
 * @author Thanh
 */
public class InputStr {
    public static void main(String[] args) throws IOException, AWTException {
       InputStreamReader cin = null;
       Robot r = new Robot();
       
      while(true){
        
            cin = new InputStreamReader(System.in);
         
            r.keyPress(KeyEvent.VK_ENTER);
                    
            char c = (char) cin.read();
            
            if(c == 'q' ){
                System.out.println(c);
                System.out.println("You press 'q'. I Quit.");
                cin.close(); 
                break;
            }
              
            
         
      }
      
    }
    
}

Chạy với cmd

Aragami1408 viết 17:57 ngày 01/10/2018

Chả phải bạn không tìm được, mà là bạn không kiên trì một chút nào cả. Nếu search từ khóa như @qloved mà không được thì tìm cái khác với nghĩa tương đương đi chứ. Bạn chẳng khác gì một ví dụ trong bài viết này: http://www.giaosucan.com/2018/02/luoi-suy-nghi-can-benh-tram-kha-cua-lap.html

Nếu search Tiếng Việt không ra thì thử search Tiếng Anh xem nào. Tiếng Anh thì có cả núi tài liệu trước bạn nhé! Bạn chỉ mong kết quả một cách nhanh chóng nhờ người khác cho có kết quả như mong đợi chứ chả bỏ ra chất xám nào cả. Ngoài ra có thể search rộng hơn chút: Input/Output in java.

Nguyễn Đình Anh viết 17:47 ngày 01/10/2018

Dùng cái này thử xem, chịu khó GG một chút đi xem nào !

InputStreamReader(System.in)

Bài liên quan
0