小编typ*_*pos的帖子

如何在C#中将控制台输出写入控制台和文件?

我有一个简单的控制台应用程序,我已经Console.WriteLine在很多地方用来向用户显示正在执行的活动.但是,最后我想将所有控制台输出保存到日志文件中.目前,我有这样的事情:

if (!Directory.Exists(LOG_DIRECTORY)) {
    Directory.CreateDirectory(LOG_DIRECTORY);
}

long ticks = DateTime.Now.Ticks;
string logFilename = ticks.ToString() + ".txt";
string filePath = Directory.GetCurrentDirectory() + "\\" + LOG_DIRECTORY + "\\" + logFilename;
FileStream ostream = null;
StreamWriter writer = null;
TextWriter oldOut = Console.Out;

try
{
    ostream = new FileStream(filePath, FileMode.OpenOrCreate, FileAccess.Write);
    writer = new StreamWriter(ostream);
}
catch (Exception ex)
{
    Console.WriteLine("Cannot open {0} for writing.", logFilename);
    Console.WriteLine(ex.Message);
    return;
}

Console.SetOut(writer);

Console.WriteLine("{0}", Directory.GetCurrentDirectory());

Console.SetOut(oldOut);
writer.Close();
ostream.Close();

Console.WriteLine("\n\nDone!");
Run Code Online (Sandbox Code Playgroud)

关键是这会将内容直接打印到文件中,并且控制台中不会打印任何内容.有没有办法解决这个问题?请注意,我需要将Console.WriteLine输出直接实时写入控制台,而对于写入日志文件,可以在程序结束时完成,其中几乎所有其他内容都已完成.

c# console

3
推荐指数
1
解决办法
1565
查看次数

如何在单击时更改 ListItem 的样式?

我在一个项目中使用 Material UI 和 React,我有一个组件,大致如下所示:

import React, { Component } from 'react';
import { List, ListItem } from 'material-ui';
import PropTypes from 'prop-types';

class MyComp extends Component {
    constructor(props) {
        super(props);

        this.onClickMethod = this.onClickMethod.bind(this);
    }

    onClickMethod() {
       // removed for brevity
    }

    render() {
        return (
            <div>
                <List>
                    {this.props.myData.map(pp => {
                        return (
                            <ListItem key={pp.name}
                                      style={styles.listItem}
                                      primaryText={pp.name}
                                      onClick={this.onClickMethod}
                            />
                        )
                    })}
                </List>
            </div>
        );
    }
}

const styles = {
    listItem: {
        // removed for brevity, includes some styles
    }, …
Run Code Online (Sandbox Code Playgroud)

javascript reactjs material-ui

2
推荐指数
1
解决办法
1056
查看次数

How to render a component on button click in React?

I'm using React and Material UI for a project, and I'm implementing payment methods. I will basically support different type of payment methods, and depending which one user chooses I want to display a form, and once the user fills the form and submits it, I want to return to my previous view. I have a component that looks like this:

import React, { Component } from 'react';
import { List, ListItem } from 'material-ui';
import { Button } from …
Run Code Online (Sandbox Code Playgroud)

reactjs

2
推荐指数
1
解决办法
3万
查看次数

React中的Promise中的setState

我在我的React代码中有一个函数,如下所示:

getAttachment(url) {
    fetch(url).then((responseText) => {

        var response = responseText.json();

        response.then(function(response){
            this.setState({ attachment: response });
        });
    }.bind(this));
}
Run Code Online (Sandbox Code Playgroud)

但是当我编译时我得到一个错误,说我有一个意外的令牌.bind(this).任何想法,如何在承诺中设置状态?

javascript reactjs

2
推荐指数
2
解决办法
5604
查看次数

Lisp中的深度反转功能

我想在Lisp中编写一个深度反向函数,只依赖于Lisp提供的原始反向函数,以及其他一些常见的东西.我认为使用地图更容易,例如:

(defun deep-reverse (list)
  (if (listp list)
      (mapcar #'deep-reverse
              (reverse list))
      list))
Run Code Online (Sandbox Code Playgroud)

但是如果不使用这些地图或其他结构呢?仅仅依靠的东西,如if,reverse,append,null,nil,listp,atom,cons,car,cdr,等基本的东西.我可以做一个级别的反向,像这样:

(defun reverse (list)
  (if (null list)
     'nil
      (append (reverse (cdr list))
              (cons (car list) 'nil))))
Run Code Online (Sandbox Code Playgroud)

但是我如何才能实现深度逆转呢?深度反转的意思是,如果函数的输入是((1 2 3) (4 5 6)),输出应该是((6 5 4) (3 2 1)).

lisp common-lisp

1
推荐指数
1
解决办法
357
查看次数

如何在 React 中设置 div 的背景图片?

我正在创建一个反应应用程序,并且我有一个或多或少像这样定义的组件:

import React, { Component } from 'react';
import axios from 'axios';
import './App.css';

class App extends Component {
  constructor(props) {
    super(props);

    this.state = {
      data: [],
      loading: true,
      error: null
    };
  }

  componentDidMount() {
    var _this = this;
    this.serverRequest = 
      axios
        .get("LinkToAPI")
        .then(result => {
          _this.setState({
            data: result.data,
            loading: false,
            error: null
          });
        })
        .catch(err => {
          _this.setState({
            loading: false,
            error: err
          });
        });
  }

  componentWillUnmount() {
    this.serverRequest.abort();
  }

  renderLoading() {
    return <div>Loading...</div>
  }

  renderError() {
    return (
      <div> …
Run Code Online (Sandbox Code Playgroud)

javascript css reactjs

1
推荐指数
1
解决办法
5213
查看次数

如何将切片发送到Go中的函数?

我正在Go中重写一些C代码.在我的C代码中我有这样的东西:

static void sharedb(unsigned char *sharedkey, unsigned char *send,
                    const unsigned char *received) {
    unsigned char krq[96]; 
    unsigned char buf[64];
    // rest removed for brevity

    indcpa_enc(send, buf, received, krq + 32);
}
Run Code Online (Sandbox Code Playgroud)

indcpa_enc函数的定义如下:

static void indcpa_enc(unsigned char *c,
                       const unsigned char *m,
                       const unsigned char *pk,
                       const unsigned char *coins)
Run Code Online (Sandbox Code Playgroud)

所以,在我的Go代码而不是使用char数组我使用了byte数组.我有这样的地方:

func SharedB(sharedKey, send, received []byte) {
    var krq [96]byte
    var buf [64]byte

    // rest removed for brevity

    INDCPAEnc(send[:], buf[:SharedKeyBytes], received[:], krq[32:32+CoinBytes])
}
Run Code Online (Sandbox Code Playgroud)

当 …

c go

0
推荐指数
1
解决办法
70
查看次数

如何在Rust中调用汇编函数?

我知道在Rust中调用C函数的一种方法是使用这样的东西:

extern "C" {
    fn abs(input: i32) -> i32;
}

fn main() {
    unsafe {
        println!("abs(-3) = {}", abs(-3));
    }
}
Run Code Online (Sandbox Code Playgroud)

但是如何.s在Rust代码中调用一些汇编函数(位于与其他Rust文件相同的目录中的文件内)?

assembly rust

0
推荐指数
1
解决办法
1168
查看次数

如何给出多个功能参数相同的类型?

在Go中声明一个函数时,可以给出多个相同类型的参数:

func test(a, b, c uint8) { }
Run Code Online (Sandbox Code Playgroud)

Rust是否有办法为多个参数提供相同的类型,而无需手动明确指定每个参数?

这似乎不起作用:

fn test(a, b, c: u8) { }
Run Code Online (Sandbox Code Playgroud)

rust

0
推荐指数
1
解决办法
783
查看次数

Go中函数名前面的参数?

我看到一些Go函数定义如下:

type poly struct {
    coeffs [256]uint16
}

func (p *poly) reset() {
    for i := range p.coeffs {
        p.coeffs[i] = 0
    }
}
Run Code Online (Sandbox Code Playgroud)

您可以稍后将其称为:

var p poly
p.reset()
Run Code Online (Sandbox Code Playgroud)

我还没有在其他编程语言中看到这个.p *poly重置功能的目的是什么?它似乎像一个函数参数,但在函数名之前写入.有什么澄清吗?

go

-2
推荐指数
1
解决办法
2281
查看次数

标签 统计

reactjs ×4

javascript ×3

go ×2

rust ×2

assembly ×1

c ×1

c# ×1

common-lisp ×1

console ×1

css ×1

lisp ×1

material-ui ×1